如何从另一个视图开始显示一个视图?

时间:2011-11-03 01:44:20

标签: objective-c uiview

假设您没有UIController来完成这项工作。在UIView内...您如何将self替换为另一个UIView

2 个答案:

答案 0 :(得分:2)

从你的问题中你想要做什么并不是很清楚。例如,UIController不是一个类。

理想情况下,您的应用应该采用以下结构:

UIViewController子类

  • 一次控制一组对象全部在屏幕上。例如,任意数量的UITextFieldsUIButtonsUIViewsUILabels
  • 具有方法(IBActions和其他委托方法),这些方法由用户与控件和输入的交互触发。
  • 拥有IBOutlets,允许它操纵用户在屏幕上看到的内容。例如,附加到UILabel的IBOutlet允许在用户按下按钮时更改文本。
如果您需要自定义绘图代码或某种自定义控件,

UIView通常只是子类。如果你可以帮助它,不要把应用程序逻辑放在这里,你通常可以帮助它。

您可以拥有多个UIViewController,但它们通常非常独立。视图控制器通常不维护其他视图控制器的引用。如果他们这样做就像委托模式一样松散的联接。

底线:如果您有两个需要彼此通信的视图控制器,则需要引用另一个视图控制器。这通常以一个或两个视图控制器上的属性的形式出现,并通过接口构建器或在创建它们时在运行时连接。

答案 1 :(得分:1)

您可以使用self.addSubview:添加其他子视图,也可以查看self.bringSubviewToFront:

有关详细信息,请查看文档: http://developer.apple.com/library/ios/#documentation/uikit/reference/uiview_class/uiview/uiview.html