使用UIViews而不是UIViewControllers时可能出现的问题?

时间:2016-03-05 07:20:33

标签: objective-c uiview uiviewcontroller

我一直试图弄清楚在使用UIViews而不是UIViewControllers时会出现什么问题而且找不到任何东西因此我推荐使用自定义UIViews时通常使用UIViewController出于某种原因。

我更喜欢UIViews,主要是因为在为转换设置自定义动画时,据我所知,它们更容易操作。如果我错了,请纠正我。 此外,我以编程方式自定义所有内容,如标签栏,导航栏等,因此对我来说,自定义UIView可以完成UIViewController所做的一切。

那么,使用单独的自定义UIView而不是新的UIViewController有问题吗?如果是的话,请赐教..!

修改

我知道MVC模型和 UIViews而不是UIViewControllers 我的意思是忽略每个屏幕的整个UIViewController事物,并使用UIView作为某些屏幕的所有对象的容器。

例如,在显示菜单屏幕时,不是为自己的"部分提取UIViewController,而是根本不做UIViewController并使用自定义UIView进行操作一个容器,在那里绘制/添加所有内容。其余的"部分"。(设置,选项等)

也是如此

这有问题吗?

1 个答案:

答案 0 :(得分:1)

  

我一直试图弄清楚使用UIView而不是UIViewController s时会出现什么问题

通常不能这样做,因为视图对象和视图控制器对象占据模型 - 视图 - 控制器层次结构中的不同位置。它们彼此之间甚至不是一对一的,因为单个控制器通常管理多个视图。

  

我更喜欢UIView s,主要是因为根据自定义设置过渡动画,就我所知,它们更易于操作。

在一个功能可以合理地进入视图或视图控制器的情况下,它很可能属于视图,而不是视图控制器,因此您的观察是正确的。可以封装在单个UIView中的自定义动画应该封装在UIView中,即使相同的代码也可以放在UIViewController中。