我有一个Android应用程序,我对签名和未签名用户都有相同的基本活动。活动之间的区别在于我想在签名用户的溢出菜单中实现注销按钮,并为保存的数据实现一些按钮。
我是否应该对此类事件或单独的活动使用相同的活动?
答案 0 :(得分:3)
我个人建议有一个基本活动和两个片段,一个用于“已登录/已登录”用户,另一个用于未签名用户。
这种特殊方法可以帮助您解决各种问题,因为您可以将基本活动充当子片段的“控制器”。碎片在资源方面更灵活,更便宜。这样你就可以让一个片段处理“登录”状态,并调用可以在其他片段之间共享的各种方法,因为它们位于相同的基本活动之下(这些“可共享”的方法应该在基本活动,或者在单独的管理器中,以防您想在其他上下文(活动)中使用它们)。有关此Fragment vs Activity的更多上下文,请查看this。
回到你的情况,根据我的经验,我会使用这种方法而不是显示或隐藏东西,具体取决于用户状态。这是因为我总是启动一个简单的应用程序,有一个处理各种状态的通用屏幕,但随后应用程序变得更加复杂,我最终需要根据用户将显示/隐藏内容的一个片段分离为两个或者更多分离的碎片。始终将每个州视为自己的州,而不是只有一个处理不同州的通用州。
答案 1 :(得分:1)
我没有特别看到任何重复工作的理由,以便从用户界面添加或删除按钮。这会使您的代码的开发,测试和维护变得复杂。
我建议根据您提供的信息使用相同的活动。