代表团是首选方式吗?

时间:2010-08-22 22:43:55

标签: iphone objective-c cocoa-touch

我有一个UIViewController子类,允许用户添加一个新的模型对象,在这种情况下是一个银行帐户。我将视图控制器命名为AddBankAccountViewController。用户可以输入帐号,帐户标签和帐户银行,但这都是在单独的视图控制器中完成的。

我正在使用委托让AddBankAccountViewController知道用户已经更改了值。结果是AddBankAccountViewController现在符合3个自定义协议(即EditAccountNumberViewControllerDelegate等),将来可能会更多。

我的问题是:这是正确的方法,还是有更好的方法(例如从视图控制器到AddBankAccountViewController的直接链接)?

2 个答案:

答案 0 :(得分:2)

另一种选择是拥有BankAccount类并直接修改它,并让BankAccount在更改时发送通知(或者假设它在viewDidAppear中可能已更改:)。然后只需通过银行帐户修改每个视图控制器。

答案 1 :(得分:1)

代表团很好。您可能希望在一个通用(可选)协议中总结相关方法。或者你可以使用目标/行动模式,但委托可能是你大多数时候想要的。