我正在寻找一些设计模式来使用Android
应用程序中的一组Activity
。我目前正在开发一个应用程序,我觉得它会在用户界面的很多修订之前进行,直到它的“最终”版本(如果有的话)。我在模式中使用Service
中的控制器思考了一些问题,但我找不到任何好的例子。我发现唯一常见的参考是使用AIDL
进行进程间接口绑定,这将不适用。Android MVC设计模式
基本上我想是用于Activity
实现诸如showLoginScreen()
,loginError()
等使得任何UI应该能够实现(该控制器不直接依赖于该视图中,只有它的接口)定义的Interface
。如果这是最简单的方法来实现这一点,那么获取句柄到活动Activity
s的最佳接受方式是什么?我一直很困惑当你调用一个不活动的Activity
上的方法时会发生什么。
我正在考虑沿着Application
类中的Map
行作为单例吗? Map
的put()
/remove()
将被连接到onStart()
和onPause()
。尽管如此,这仍然不能保证Activity
仍然存在...可以通过密钥上的get()
获得参考,然后在Service
有机会调用其接口之前它可以是paused()
。
任何建议或见解,将不胜感激。
编辑:我已经看过其他职位如MVC pattern on Android但他们大多没有解决执行(和接受的答案我只是平了不同意反正)
为什么你想要有多个活动?每个活动是否代表您在MVC中的视图? – Noel 2011-06-11 23:54:09
每个Activity都是一个用户需要与之交互的独立屏幕。他们不会尝试完成相同任务的多项活动。除了全屏3D游戏,我不知道只有一个活动的任何应用程序。 – Ryan 2011-06-11 23:58:01
您是否考虑过使用单个Activity作为您的控制器,然后在运行时动态切换屏幕/视图? – Noel 2011-06-12 00:04:54