Methods 从popover调用函数

Methods 从popover调用函数,methods,ipad,uipopovercontroller,popover,Methods,Ipad,Uipopovercontroller,Popover,好的,所以我从我的主视图和所有的好东西制作了一个爆米花。但是我想让我的popover在按下popover中的按钮时在我的主视图中调用一个动作 MainView*MainView=[[MainView alloc]initWithNibName:@“MainView”bundle:nil]; [mainView doStuff] “dostuff”函数更改视图中的某些元素。例如,工具栏的颜色应该更改。我放置了一个print命令,print命令执行。但由于某些原因,工具栏不会改变颜色 我已将Mai

好的,所以我从我的主视图和所有的好东西制作了一个爆米花。但是我想让我的popover在按下popover中的按钮时在我的主视图中调用一个动作

MainView*MainView=[[MainView alloc]initWithNibName:@“MainView”bundle:nil];
[mainView doStuff]

“dostuff”函数更改视图中的某些元素。例如,工具栏的颜色应该更改。我放置了一个print命令,print命令执行。但由于某些原因,工具栏不会改变颜色

  • 我已将MainView的标题导入到popover中
  • 我在我的popover中为MainView做了一件@class的事情
  • doStuff在MainView的标头中声明
  • IBO出口也已声明,并已连接

有什么想法吗?

令人失望的是,我们没有直接的方法来检查popover显示在哪个视图(视图控制器)中。我在基于tab的应用程序中所做的事情是:

New_iPadAppDelegate *appDel = (New_iPadAppDelegate *)[[UIApplication sharedApplication] delegate];
    NSArray *viewConts = [(UINavigationController *)[[appDel tabBarController] selectedViewController] viewControllers];
    MainViewController *viewController =  (MainViewController *)[viewConts lastObject];
    if([[viewController popoverController] isPopoverVisible]){
        [viewController doStuff];
    }
希望这有帮助

我知道这不是最好的方式,希望苹果能思考这个问题,或者有人能想出解决办法

谢谢


Madhup

您是否添加了子视图:
主视图?不,它不认为我添加了。让我检查一下…是“[self.view addSubview:mainView]”吗?因为当我把它放在我的iAction中调用dostuff时,应用程序崩溃了。我现在试图通过代理调用它,但它仍然拒绝工作。嗨,用户288225,你解决了这个问题吗?我也面临同样的问题。如果你想办法,请帮忙me@Jann我不知道你怎么想,但这也是苹果公司看到splitview控制器参考代码的方式