相关文章推荐
胆小的单杠  ·  Python ...·  1 年前    · 
骑白马的饭卡  ·  C#.NET ...·  1 年前    · 
温柔的杨桃  ·  RecyclerView ...·  1 年前    · 

//PopUpContentViewController   是自定义的需要弹出popover的viewcontrller,弹出框里面显示的内容就是这个

PopUpContentViewController *popContentViewControl = [[ PopUpContentViewController alloc ] init ];

// Setup the popover for use in the detail view.   popOverMenu 是我之前声明的UIPopoverController对象

//必须要用之前创建的弹出框内容viewcontroller来初始化popover

popOverMenu = [[ UIPopoverController alloc ] initWithContentViewController :popContentViewControl];

//4.x的私有方法

[ popOverMenu setValue :[ NSNumber numberWithInt : 2 ] forKey : @"popoverBackgroundStyle" ];

// 对应的值有 0- 黑色 , 1- 白色 , 2- 奶白色 ,

// 还可以使用下面公有方法修改 UIPopoverController 里面导航部分的背景颜色

//[[[popOverMenu contentViewController]  view] setBackgroundColor:[UIColor orangeColor]];

//UIPopoverArrowDirectionDown表示箭头方向,down表示向下

popOverMenu . popoverContentSize = CGSizeMake ( 500 , 30 );

[ popOverMenu presentPopoverFromRect : CGRectMake ( 620 , y, 100 , 10 ) inView : self . view permittedArrowDirections : UIPopoverArrowDirectionDown animated : YES ];

popover 弹出后,点击外面的区域默认会让 popover 消失   最近一个项目有这样地需求,因为弹出的 popover 上有取消和确定按钮,所以客户要求点击 popover 外区域让 popover 不消失。我查了下资料,发现了setPassthrough View s这个 方法 ,但是这个 方法 的原理是设置当UI Popover Controller显示出来时,哪些控件可以继续跟用户进行正常交互,这样一来,点击区域外 @Override public void onClick( View v) { LayoutInflater from = LayoutInflater.from(getActivity()); LinearLayout content View = (LinearLayout) from.inflate(R.layout.activity_calen UIKIT_EXTERN API_DEPRECATED("UI Popover Controller is deprecated. Popover s are now implemented as UI View Controller presentations. Use a modal presentation style of UIModalPresentationPo 今天主要来记录一下 popover 使用 主视图里添加进两个将 view 变成navigation controller 随后拖入bar button item 和 label 随后在创建一个 view 继承自 uitable view controller 在cocoa touch类中 名为popTable View Controller 以下便是具体的代码 解释也在其中,回调 方法 是在点击一 先看他的继承关系,UI Popover Controller是直接继承自NSObject,它和UI View Controller没有关系.那它是怎么实现弹出在所有 View 之上的,我猜测是利用了keywindow,把这个 View 加在keywindow里面,我做了个试验,一般我们会在AppDelegate的didFinishLaunchingWithOptions中来初始化我们的window,把应用的第一个