mid*_*ght 7 android android-fragments android-activity navigation-drawer android-navigation
一个Activity
含有NavigationDrawer应该兼顾其片段.我的问题是抽屉必须在应用程序的所有可能屏幕上都可用,这使得我的唯一活动MainActivity与片段回调代码和不同种类的导航/业务逻辑混杂在一起.
随着应用程序的增长,浏览活动变得更加困难,我开始考虑可能的替代方法.新方法必须保持原始的相同视觉行为并消除混乱.
除了导航抽屉事件之外,还有多个片段也包含导航/业务逻辑,这些片段也由MainActivity处理.例如,片段可能包含3个或更多按钮,这些按钮将启动其他片段或执行某些交叉关注业务逻辑.
因此,由MainActivity实现的监听器接口数量增加,此时此数量达到20.您可能会认为它看起来或感觉不好.
我想我可能会将事情分解为多个NavigationDrawer活动以简化维护.它表明更大的资源消耗和轻微的视觉效果偏差,因为新的活动将仅在抽屉关闭后启动,与原始方法相反,后者立即改变碎片.
你认为这是个坏主意吗?怎么改进?还是有更好的解决方案?
谢谢.
UPD改进了描述.
你说,你只有一项活动。因此,我假设您的应用程序中的所有屏幕都是片段。因此,默认情况下,NavDrawer 在您的应用程序中随时可用。
不需要多个 Activity 具有不同的 NavDrawer 实现。您可以使用一个 BaseActivity 来处理 NavDrawer 的实现,并且通过继承,如果您想在将来实现更多功能,您可以在您喜欢的每个 Activity 中使用它。这将遵循 OOP 原则并导致更清晰的代码。此外,NavDrawer 在每个 Activity 中的外观和行为都相同。这就是它的目的,为您的应用程序提供一个导航菜单。
Activity 扩展了 BaseActivity,其工作是处理 Fragment 的事务以及通过回调与它们进行通信。
这样,您的应用程序的导航结构就清晰了,绝对是正确的选择。
您可以按照这个非常好的完整教程进行操作,它可以执行类似的操作。乍一看有点不知所措,但您可以了解基本概念。
归档时间: |
|
查看次数: |
1240 次 |
最近记录: |