我有一个UIViewController子类,允许用户添加一个新的模型对象,在这种情况下是一个银行帐户。我将视图控制器命名为AddBankAccountViewController。用户可以输入帐号,帐户标签和帐户银行,但这都是在单独的视图控制器中完成的。
我正在使用委托让AddBankAccountViewController知道用户已经更改了值。结果是AddBankAccountViewController现在符合3个自定义协议(即EditAccountNumberViewControllerDelegate等),将来可能会更多。
我的问题是:这是正确的方法,还是有更好的方法(例如从视图控制器到AddBankAccountViewController的直接链接)?
答案 0 :(得分:2)
另一种选择是拥有BankAccount类并直接修改它,并让BankAccount在更改时发送通知(或者假设它在viewDidAppear中可能已更改:)。然后只需通过银行帐户修改每个视图控制器。
答案 1 :(得分:1)
代表团很好。您可能希望在一个通用(可选)协议中总结相关方法。或者你可以使用目标/行动模式,但委托可能是你大多数时候想要的。