【发布时间】:2012-05-11 16:18:28
【问题描述】:
我需要帮助来理解如何从 UIViewController 中抽象出交互。出于所有意图和目的,假设我有一个控制拼图的视图控制器。我有一系列拼图视图、拼图板视图(放置拼图的地方)以及其他一些杂项视图。现在我与这些拼图有典型的泛式交互。
我需要做的是将交互抽象出来,这样我就可以在单击按钮或调用方法时完全改变整个系统的“交互模式”,可以说,同时保持其他一切的状态与切换前的状态完全相同。例如,在切换后,他们不必用手指拖动棋子,而是必须“选择”一个棋子,然后通过陀螺仪利用重力滑动它。
我对 iOS 还很陌生,实际上总体上几乎没有 OO 经验,所以在我修改我的代码来解决这个问题之前,我真的希望得到更有经验的人的一些建议。 (是的,我会拍个快照,但我还是很紧张!)无论如何,我在想也许我应该做这样的事情:
- 拥有一个根视图控制器,它可以保留指向我的视图的强指针并处理所有与非交互相关的事情
- 在该根视图控制器中有一个指向交互控制器的指针,该控制器的工作是处理所有交互代码
- 交互控制器将在运行时通过委托从根视图控制器通过委托获取其视图,并将任何手势识别器等附加到 viewDidLoad 中的视图
- 交互控制器将在运行时关闭。可接受的交互控制器对象来自我为此目的定义的一些 UIInteractionViewController 的子类。
不知道会不会这样
a) 实际工作
b) 做最好的方法
c) 足够快以在运行时真正工作
d) 可扩展(我可能需要许多不同的“模式”)。
实际上,我越看我写的东西,我就越开始怀疑它的意义。救命,求救。
谢谢!
【问题讨论】:
标签: ios uiviewcontroller