【问题标题】:Extend UIViewController's UI down to children UIViewControllers将 UIViewController 的 UI 扩展到子 UIViewControllers
【发布时间】:2015-09-15 05:28:07
【问题描述】:

我有一个基本视图控制器BaseUIViewController,它是从UIViewController 扩展而来的。我在这个 ViewController 的底部有两个 UIButtons。基本上,我希望每个UIViewController 上的这两个按钮在我的应用程序中的同一位置。当我扩展BaseUIViewController 时,我在子视图控制器中看不到它们。 我也给按钮提供了 IBOutlets! 我是编程新手。请帮忙。这样继承不行吗?

【问题讨论】:

    标签: ios objective-c iphone


    【解决方案1】:

    您可以创建一个UIViewControllerContainment。这个Stackoverflow's 帖子详细解释了如何创建它并使其工作。同样,也看看这个Stackoverflow's 帖子。这里是使用 childViewControllers 完成的。

    【讨论】:

      【解决方案2】:

      确保将这些按钮属性放在@interface 而不是@implement 中,只有@interface 中的属性可以在子类中看到。这是一个例子:

      @interface BaseUIViewController
          @property (nonatomic, weak) IBOutlet UIButton *button1;
          @property (nonatomic, weak) IBOutlet UIButton *button2;
      @end
      

      【讨论】:

        【解决方案3】:

        上面 MUNAHIL 回答的两种方式都是我认为最好的。如果您想以更基本的方式实现此目的,您可以执行以下操作。

        • BaseUIViewController 中添加两个UIButtons(以编程方式在viewDidLoad 或情节提要中)。如果需要,您可以先添加一个 UIToolBar,然后在其顶部添加按钮。
        • 使其他视图控制器成为BaseUIViewController 的子类。

          @interface SomeViewController: BaseUIViewController
          
        • 现在,默认情况下,所有视图控制器都将具有这两个按钮。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2012-12-24
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-11-05
          • 1970-01-01
          相关资源
          最近更新 更多