我正在寻找有关视图控制器和视图的一些说明。一个视图控制器是否应该专门用于控制一个视图?
基本上,我的纵向视图将是一个4x3网格的按钮(在滚动视图中)。当我将视图旋转到横向时,我想要一个6x4网格。
显然,处理按钮点击等的功能在任何一个方向都是相同的,因此复制景观似乎需要付出很多努力。
我应该如何让视图控制器使用正确的视图xib?
我应该有两个单独的xib吗?我已经尝试了各种自动调整面具的组合,但没有太多运气。
我不确定要走的正确方法。
感谢。
答案 0 :(得分:2)
我不认为上面的那个回答了joec的问题。 joec想要知道,如果有2个笔尖(即landscape.nib和portrait.nib)是坏或好的,并使用1 uiviewcontroller管理那2个笔尖中的视图。
我对mvc设计模式的理解是,ViewController确实应该管理不同的视图。但是当我看到互联网时,由于可可触摸的原因,当UIViewController在运行时切换视图属性时,人们常说它很糟糕(无论这意味着什么)。这让我很困惑。为什么viewcontroller无法切换视图?为什么我要构建一些奇怪的“主”-viewcontroller,它管理另外两个viewcontrollers,并且每个人都管理他自己的视图。在横向和纵向抽象(或者说是iphone-gui和ipad-gui抽象)的情况下,gui-business-layer中的代码(viewcontroller中的事件代码等)对于不同的视图是完全相同的。观点的风格不是。所以这应该是mvc实现的好处之一。
抱歉,但对我来说这似乎不合逻辑,苹果。有什么想法吗?
编辑说:
似乎苹果为解决这个问题提供了一些奇怪的解决方法(讨厌我,但对我来说只不过是这样,因为我看不到在UIViewController类中管理和处理视图的真正直接的设计实现):我在以下堆栈溢出线程中找到了这个链接:
Want to use muliple nibs for different iphone interface orientations
感谢Michal那个。
答案 1 :(得分:0)
您还可以尝试更改视图和子视图大小等。 看看Madhup在此之前就已经开始了。 Changing UIView on orientation change