【问题标题】:Hide View Controller?隐藏视图控制器?
【发布时间】:2013-08-16 22:46:25
【问题描述】:

我有一个导航栏。导航栏有一个按钮,它链接到一个视图控制器。按钮的动作是视图控制器的“弹出”。当按下视图控制器上的按钮 on 时,我需要视图控制器消失。我所拥有的只是[self.viewCV.superview.superview.superview.superview setHidden:true](其中 viewCV 是视图控制器的直接子级)这似乎隐藏了视图控制器,但是,视图控制器上的一些“控件”在“触发按钮”(UIBarButtonItem 激活第二个视图控制器)被删除。

【问题讨论】:

  • 您是在使用按钮操作创建 UIPopover,还是您的操作名称刚刚命名为“popover”。不清楚您的意图是什么,并且您对 popover 一词的使用令人困惑
  • @JustinAmberson 该按钮有一个指向 UIViewController 的界面构建器链接,它是一个“弹出框”链接:i.imgur.com/Sfz25me.png

标签: iphone ios objective-c cocoa-touch


【解决方案1】:

如果您只是想关闭 UIPopoverController,则不必像那样通过超级视图挖掘来尝试隐藏它。您所需要的只是对弹出框有一个引用,您可以简单地告诉它关闭自己:

[popoverController dismissPopoverAnimated:YES];

【讨论】:

  • 好的,但是如何获得对弹出框的引用?
  • @user2687781 不幸的是,AFAIK 没有很好的方法来做到这一点。您必须创建对弹出框的弱引用,并在创建时将其传递给弹出框内的视图控制器,从而将消息发送到某个地方。
  • 我想我可以改为以编程方式创建它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-17
  • 1970-01-01
  • 1970-01-01
  • 2018-04-19
相关资源
最近更新 更多