代码之家  ›  专栏  ›  技术社区  ›  DevDevDev

分解iPhone用户界面-一个xib中的多个视图?

  •  0
  • DevDevDev  · 技术社区  · 15 年前

    为了保持简单,我使用主视图控制器管理工具栏,而不是使用各种相互交织的依赖项或真正深入的委托链。

    无论如何,如何在一个xib中拥有多个视图并正确初始化它们?比如,如果我想在屏幕中央显示我的一个自定义视图,我该怎么做?

    3 回复  |  直到 15 年前
        1
  •  2
  •   Shaggy Frog    15 年前

    无论如何,我怎么能有多个视图 适当地?就像我想展示一样 我在中心的一个自定义视图 在屏幕上,我该怎么做?

    你可以有很多 UIView

    您可以将这些视图设置为 对于主视图(很少,这是很多观点)。假设你有两种观点, FooView BarView . 你想要 巴维

    @interface MyViewController : UIViewController
    {
        FooView* fooView;
        BarView* barView;
        ...
    }
    ...
    @property (nonatomic, retain) IBOutlet FooView* fooView;
    @property (nonatomic, retain) IBOutlet BarView* barView;
    ...
    

    然后,在代码中,当您想要更改视图时,只需使用 setHidden: 方法隐藏其中一个并显示另一个。

    或者,如果我将视图分开 进入多个XIB,我如何 它们引用相同的控制器 对象的IBoutlet/IBActions?

    您可以让其他XIB共享同一视图控制器。我自己也做过很多。只需将文件所有者设置为适当的类。

        2
  •  2
  •   pix0r    15 年前

    其实很简单。您只需在XIB文件中创建一个新的根级别视图,并创建一个 IBOutlet 对于主视图控制器中的此视图。

    至于直接从XIB加载视图,共享同一个视图控制器,这有点草率。。您基本上需要遍历XIB文件中的项目,并找到您要查找的元素。

        3
  •  0
  •   Ben S    15 年前

    全部的

    如果视图有点复杂,则应将其拆分为不同的视图 .xib 文件夹。在本例中,父级 UIViewController 会有其他的出口吗 子类而不是IBO UIViews