我是新手Ios开发人员,这是我的第一个特定于ipad的项目。我遇到了UIPopOverControl
类实现的一些问题。在我的项目中,我有一个View controller
子类,在该视图中我有几个按钮。我需要做的是在按下按钮后显示带有UIPopOvercontrol
类的弹出窗口。弹出窗口中显示的数据对于点击不同的按钮会有所不同,所有数据都将以UITableView
样式显示。我已经能够使用一个UIViewController
和UITableViewController
子类显示一个按钮和一个popOver,并从nib文件加载数据。但是我怎样才能完成我想要的任务?
提前致谢
答案 0 :(得分:1)
iOS故意限制一次只能看到一个Popover。 API本质上是为防止多个同时打开而设计的。您需要考虑满足您要求的替代方法。
答案 1 :(得分:1)
在您的应用中,不需要使用多个UIPopoverViewController
,您也可以使用单个UIPopoverViewController
执行此操作。
简单创建新的UIPopoverViewController
类;
并在UITableView
中创建UIPopoverViewController
。
在您的应用中,您有多个UIButton
,只需提供每个按钮的tag
,然后在tag
按钮上传递数据库,并在UITableView
上显示此数据。
答案 2 :(得分:0)
我已经在这里完成了要求。 看一下这个。 它肯定会帮到你。Code for showing 2 popViewController at the same time and different data in both
您可以在AppDelegate中设置一个变量来检查按下了哪个按钮? 然后,在Controller的viewWillAppear中,获取该变量的引用并检查按下了哪个按钮?
然后根据cellForRowAtIndexPath中的要求重新加载数据。
希望这有帮助
AppDelegate.h
@interface AppDelegate:UIResponder
@property int buttonPressed; //点击任意按钮
设置@end
YourController.h
int buttonPressed;
YourController.m
{
AppDelegate * app =(AppDelegate *)[[UIApplication sharedApplication] delegate];
buttonPressed = app.buttonPressed;
}
{
if(buttonPressed == 1){// do this}
else if(buttonPressed == 1){// do this}
else // do this
}