【发布时间】:2014-11-21 12:18:44
【问题描述】:
我精通 android,但对 iOS 有点陌生。
我一直在使用 xcode 的故事板布局系统来创建我的初始页面,但我对动态页面创建更感兴趣。
我的要求真的很简单。
我有一个线程,用户在其中选择一个布局,然后我对该页面执行 segue。 但是我厌倦了故事板的复杂性,并且认为必须有一种更简单的方法。
我有可以调用的函数,这些函数将根据我的规范布局特定页面。
在 android 中我这样做:
我在屏幕上有一个布局,其中一个对象定义在屏幕上的特定位置。 然后我只需将我想要的布局连接到特定对象。
与其在故事板页面之间用segues重绘整个页面,这会产生很多重复,我更喜欢更简单的东西。
这是伪代码:
(ui thread)
display root layout (with hook/frame/object to contain subview)
user pushed button in root window to change layout
popup dialog asking which layout
send msg to render code
(render thread)
switch (whichLayout)
case A: connect layout A to subview; break
case B: connect layout B to subview; break
...
我有视图、根布局和弹出窗口的构造函数。在 iOS 世界中,我有一个 tableCollection 或一个 gridCollection 作为一个可以被调用来完成工作的类,但是,正如我上面提到的,我正在使用序列重新创建整个显示页面,并且不希望这样做。
我怀疑我遗漏了一些隐藏在故事板下的简单概念。
【问题讨论】:
-
有点难以理解您在寻找什么功能,但听起来导航控制器可能会有所帮助(也许)?我宁愿使用更多、更简单的视图控制器,而不是使用更少、更复杂的视图控制器。此外,当你切换平台并发现一些看似愚蠢或复杂的东西时,你会本能地与之抗争,试图重新创造你以前舒适的方法。这通常是人们在新平台上发明一些愚蠢复杂的东西的时候。我的建议以“在罗马时...”这句话开头。
-
我认为我的问题是我不喜欢使用鼠标,或者就此而言使用 GUI。使用故事板来布局应用程序似乎非常复杂。但正如你所说,我目前正在像罗马人那样做。