如何实现android侧边栏菜单?

如何实现android侧边栏菜单?,android,android-menu,Android,Android Menu,实现如下侧边栏菜单的最佳解决方案是什么? 侧边栏的项目和每个部分的内容来自服务器(项目的数量是可变的) 节列表(左侧)可滚动 节项计数可以超过20项 我使用MVVM 我想了解一些有关视图实现的建议,以在实现中获得最佳性能 您可以从材料设计中获得完整代码的帮助 对于右侧的部分项目,可以将RecyclerView与GridLayoutManager一起使用 对于部分列表(左侧),根据用户界面需求,有两种可能性 您可以将导航视图用于左侧导航菜单,但如果从internet加载数据,则不适用 您可以将

实现如下侧边栏菜单的最佳解决方案是什么? 侧边栏的项目和每个部分的内容来自服务器(项目的数量是可变的)

  • 节列表(左侧)可滚动
  • 节项计数可以超过20项
  • 我使用MVVM

我想了解一些有关视图实现的建议,以在实现中获得最佳性能


您可以从材料设计中获得完整代码的帮助

对于右侧的部分项目,可以将RecyclerView与GridLayoutManager一起使用

对于部分列表(左侧),根据用户界面需求,有两种可能性

  • 您可以将导航视图用于左侧导航菜单,但如果从internet加载数据,则不适用
  • 您可以将RecyclerView与LinearLayoutManager一起使用
  • 另一方面,如果您使用查看寻呼机,将不会有好的性能,因为可能有超过10个列表

    因此,您可以在一个片段中显示这两个列表,并将数据加载到存储库中。并在响应时使用实时数据和ViewModel将数据发送到片段。在live data observer中更新RecyclerViews。根据所选节更新内容


    在这种情况下,我发现最好的解决方案是在左侧边栏菜单中使用recycler视图(因为它易于使用和处理)
    我使用单个片段来显示每个侧栏菜单项的内容,并缓存内容以供以后使用(单击用户操作)
    我不想使用导航菜单,原因有三:

  • 我需要没有滑动动作的修复菜单(当然我知道我可以修复没有滑动的导航菜单)
  • 更重要的是:我用来自服务器的数据填充边栏菜单项,这对于回收者视图来说很容易处理
  • 使用recycler视图,根据数据和用户操作更容易更改侧栏菜单视图

  • 谢谢,你对加载每个部分的内容有什么想法?在单个片段中,或在viewPager或。。。?