`
jsntghf
  • 浏览: 2534064 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

UIPopoverController的定位

    博客分类:
  • iOS
阅读更多

在UIPopoverController中提供了两种方法来指向按钮,分别是presentPopoverFromRect: inView: permittedArrowDirections: animated:和presentPopoverFromBarButtonItem: permittedArrowDirections: animated:,第二种方法好说,不用考虑位置。但是,当我们要指向视图中的某个按钮时,就要使用第一个方法了。而这个方法的难点就是,怎么准确的将箭头指向按钮。这个箭头的指向坐标是靠presentPopoverFromRect:这个参数来决定的。

 

UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
if ([UIImagePickerController isSourceTypeAvailable:
		 UIImagePickerControllerSourceTypePhotoLibrary]) {		
	imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
	imagePicker.delegate = self;
	[imagePicker setAllowsEditing:NO];
	UIPopoverController *popover = [[UIPopoverController alloc] initWithContentViewController:imagePicker];
	self.popoverController = popover;
	[popoverController presentPopoverFromRect:CGRectMake(385, 500, 70, 35) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionRight animated:YES];
	[popover release];
	[imagePicker release];
}

 

这段代码执行后的效果图:


 

那么,CGRectMake(385, 500, 70, 35)是视图中的哪个区域呢?看下图,你就清楚了:

分享到:
评论

相关推荐

    UIPopoverController简单使用

    3. **定位**: 设置popover的显示位置至关重要。你需要指定一个`UIPopoverArrowDirection`枚举值,来确定箭头指向的方向。此外,可以使用`present(from:barButtonItem:animated:)`或`present(from rect:in:animated:)...

    Popover View in iPhone

    在iPhone上也能使用UIPopoverController。这个代码库不但让UIPopoverController的使用 变得简单,同时也能在iPhone...弹出的视图会自动定位在相应的按钮旁边,并且有小箭头指向这个按钮。可以在视图上加文字或者列表。

    IOS应用源码——UIPopoverControllerDemo.rar

    2. **显示和定位**: 展示如何通过`presentPopoverFromRect:inView:permittedArrowDirections:animated:`方法将popover显示在特定的矩形区域,并指定箭头的方向,以指示popover从哪里弹出。 3. **事件响应和处理**: ...

    UIPopoverView Demo

    在iPhone上也能使用UIPopoverController。这个代码库不但让UIPopoverController的使用变得简单,同时也能在iPhone上...弹出的视图会自动定位在相应的按钮旁边,并且有小箭头指向这个按钮。可以在视图上加文字或者列表。

    Android-PopoverView-一个模仿iOSUIPopoverController效果的控件

    2. **定位灵活**:能够根据指定的锚点(anchor)视图或坐标进行定位,支持多种弹出方向,如上方、下方、左方、右方。 3. **内容可定制**:用户可以将任何视图作为popover的内容,包括按钮、文本、图片等,以满足不同...

    IOS应用源码Demo-点击地图上的指针弹出窗口(里面显示该地点的相关信息)-毕设学习.zip

    4. **UIPopoverController**或UIAlertController:当点击指针时,弹出的窗口可能是使用UIPopoverController(如果是iPad应用)或者UIAlertController(对于iPhone应用)实现的。这些控件用于显示比标准视图更大的...

    点击地图上的指针弹出窗口(里面显示该地点的相关信息)_IOS应用源码.rar

    4. **UIPopoverController或UIAlertController**:在弹出窗口显示地点信息时,iOS应用可能使用`UIPopoverController`(iPad上)或`UIAlertController`(iPhone和iPad通用)。这两种控件可以用来创建一个浮窗,展示...

    ios-TechPopList.zip

    1. **UIPopoverController**: 在iPad上,开发者常使用UIPopoverController来创建弹出视图。然而,对于iPhone,由于屏幕尺寸限制,通常需要自定义解决方案。 2. **Custom Views**: 为了在iPhone上实现类似的效果,...

    ios源码之点击地图上的指针弹出窗口(里面显示该地点的相关信息)Demo.rar

    5. **UIPopoverController或UIAlertController**:在iOS中,弹出窗口可以使用UIPopoverController(iPad)或UIAlertController(iPhone和iPad,iOS8及以上)。这个Demo可能根据设备类型和iOS版本选择合适的组件来...

    iOS 的泡泡窗口

    iOS中的泡泡窗口主要通过`UIPopoverController`类实现,但这个类仅适用于iPad。对于iPhone,开发者需要采用自定义视图或者第三方库来模拟泡泡窗口的效果。例如,提供的"PopoverForiPhoneDemo"可能就是一个示例项目,...

    swift-类似京东淘宝排序筛选

    4. `UIPopoverController` 或 `UIPresentationController`:在iPad应用中,可能会使用弹出式视图来展示更复杂的筛选菜单。 5. 自定义控件:如压缩包中的`XMDropDownChooseView`,可能是一个自定义的下拉选择视图,...

    各类二级菜单的实现

    在诸如美团、大众点评、淘宝和饿了么这样的应用程序中,二级菜单发挥着至关重要的作用,帮助用户快速定位并访问他们需要的服务。下面我们将深入探讨二级菜单的实现方法及其在实际应用中的设计原则。 首先,二级菜单...

    IOS应用源码——酷炫的popup子菜单.zip

    在iOS中,可以使用`UIView`或`UIPopoverController`(仅限iPad)来实现这种效果。 - 设计时考虑动画效果,如淡入淡出、滑动、放大等,这些可以通过`UIView`的动画API来实现,比如`animate(withDuration:animations:...

    Beginning iOS 5 Development

    - **UIPickerView与UIPopoverController**:UIPickerView是一个可以滚动选择项目的视图,UIPopoverController则用于显示弹出窗口。 ### 2. JSON在iOS开发中的作用 - **JSON简介**:JSON是一种轻量级的数据交换格式...

Global site tag (gtag.js) - Google Analytics