在我编写的许多应用程序中,多次出现我必须以模态方式从某个没有引用当前可见控制器的类中呈现控制器。(例如,一个 StoreKit 事务观察器,它提供一个用于显示产品下载进度的控制器)。
使用 Three20,我可以使用- [TTNavigator visibleViewController]
来完成工作,但如果我不想使用该框架怎么办?我应该重新实现一个类似的自定义函数TTNavigator
吗?Apple API 中是否有类似的方法?例如,为我的应用程序中的所有控制器创建一个公共父类,然后用于NSNotificationCenter
处理所有应用程序范围的通知会更好吗?(这当然会产生在一个类中包含不相关代码的副作用)
我真的很惊讶 Apple 没有在他的标准 API 中提供这个基本功能。或者这个问题在我身上反复出现的事实可能是设计实践不佳的标志?