将值传递到不同视图的最佳方法是什么?

时间:2010-04-23 23:28:01

标签: iphone

在两个不同的视图控制器之间传递变量的最佳方法是什么? 我实际知道它的唯一方法是:

app = (yourApp_comAppDelegate *) [[UIApplication sharedApplication] delegate];

由于

2 个答案:

答案 0 :(得分:2)

视图不应该包含值。您的值应该封装在模型对象中,您的视图应该呈现这些模型的当前状态。

答案 1 :(得分:0)

您可能不应该在视图之间传递数据,而是在视图控制器之间传递数据,尽管他们不应该修改模型对象,他们可能报告的唯一事情是触摸或由于用户交互而改变状态,如果它们都是在同一个视图控制器中然后将消息传递给视图控制器,并让它采取与另一个视图的approrpiate操作,这是不好的设计让视图谈论或了解彼此,这使它们不那么可重用。

现在,为了将消息从视图传递到视图控制器,您应该查看协议,让视图定义协议,视图控制器实现它,任何对象都可以实现它并让视图报告给它。 。这是阅读协议的链接 http://developer.apple.com/mac/library/documentation/cocoa/conceptual/ObjectiveC/Articles/ocProtocols.html 希望有所帮助