【问题标题】:Presenting popover view from inside reusable view?从可重用视图内部呈现弹出视图?
【发布时间】:2017-12-27 18:04:39
【问题描述】:

我对 iOS 开发还很陌生,所以请原谅我的任何误解。我在 Objective-C 中创建了一个应用程序,它在许多屏幕(称为这些主屏幕)中有一个通用的可重用视图(我们称之为“横幅视图”)。在此横幅视图中是一个按钮,假设显示弹出帮助显示(称为“帮助视图”)。我正在尝试找出执行此操作的最佳方法,以便我可以重复使用尽可能多的视图。

我尝试过的:

  1. 创建两个自定义笔尖(一个用于横幅视图,一个用于帮助视图)。这适用于在所有主屏幕上显示横幅视图(使用 UIView -> 自定义类:横幅视图),但我无法弄清楚如何在包含横幅视图的主屏幕中动态呈现帮助视图。

  2. 创建带有横幅视图和帮助视图的横幅故事板。我创建了相应的横幅控制器(故事板中的初始控制器)和帮助控制器(与 popover segue 链接),我将视图转移到。然后我尝试在我的主屏幕中放置一个容器视图,并将视图控制器自定义类设置为横幅控制器。这根本没有显示横幅。

最好的方法是什么?有可能吗?

【问题讨论】:

    标签: ios objective-c viewcontroller popover nib


    【解决方案1】:

    我的解决方案是将两个视图都放在堆栈视图中,并隐藏/显示帮助视图。

    【讨论】:

      【解决方案2】:

      您可以从横幅视图中获取最顶层的视图控制器。然后显示您的帮助屏幕(帮助屏幕应该是 UIViewController 而不是 UIView)。 要获得顶视图控制器,您可以使用此答案的代码:https://stackoverflow.com/a/24825480/2984553。之后,您可以使用以下代码显示您的帮助视图:

      [topViewController presentViewController:HelpViewController 动画:YES 完成:nil];

      【讨论】:

      • 有趣的实现,我也会检查一下。谢谢!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-10
      • 1970-01-01
      相关资源
      最近更新 更多