分享ADD和EDIT屏幕以使用相同的UIViewController是不是很好?

分享ADD和EDIT屏幕以使用相同的UIViewController是不是很好?

这是唯一的真正的区别是在一个值的情况下将填充现有(编辑)。

PS。 一些澄清。 所以,也许简单的情况下,只有一个或两个NSString字段(例如标题和说明) – 那么是否有任何错误(如任何gottchas)相关的使用相同的控制器/ NIB(视图)的EDIT和ADD?

不确定“好的做法”,但…

使用一个或另一个string填充标签很容易,隐藏button或字段也很容易,具体取决于是否显示ADD或EDIT视图。

当您的视图接收到用户input,然后需要决定是修改现有对象还是创build新对象时,问题往往会出现。

所以在退出之前,视图必须决定如何处理用户input。 如果分化是令人难以置信的复杂,你最好用两个viewsControllers。 如果这是一个简单的if-the-else在viewWillDisapper方法中或附近的问题,那么一个视图可以做到。

在这种情况下,我会使用inheritance。 一些基础UIViewController和两个额外的UIViewControllers – 一个用于添加,第二个用于编辑。 您也可以使用一个UIViewController,但这取决于您的任务是或多么困难。 这太普遍的问题。