2016-06-13 213 views
0

我建立这都将有多个部分像下面抽屉式导航:
Sliding MenuAndroid的抽屉式导航栏 - 多段

物理物理
基础
七略教训物理学
新物理学
物理学家的世界

主题
物理
化学
生物学
艺术

设置
关于
注销

第1部分:第一部分将加载的书籍基于第2节中选择默认的主题列表中,第一个主题的书籍列表将被加载。
第2部分:第2部分是学生订购的科目列表。
第3节:同为全体学生

要填充的抽屉式导航UI,我想出了一个菜单结构如下图所示:

BookMenu
的ArrayList部分


部分ID,
部分标题
ArrayList of Books

书籍
BOOKID,
BOOKTITLE

我被困在以下项目:
1.填充从适配器列表视图这需要BookMenu输入
2.动态变化的只是第一部分时,主题被改变

任何帮助,这是非常感谢!

谢谢!

注:图片附

回答

0

您可以通过不同的视图类型很容易做到这一点。例如 -

class MyData{ 
    String text; 
    boolean isHeader; 
} 
public class MyAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> { 
    ArrayList<MyData> allData; 
    class ViewHolder0 extends RecyclerView.ViewHolder { 
     ... 
    } 

    class ViewHolder2 extends RecyclerView.ViewHolder { 
     ... 
    } 

    @Override 
    public int getItemViewType(int position) { 
     // Just as an example, return 0 or 2 depending on list(let assume 0 for header 1 for data 
     // Note that unlike in ListView adapters, types don't have to be contiguous 
     return allData.get(position).isHeader?0:1; 
    } 

    @Override 
    public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
     switch (viewType) { 
      case 0: return new ViewHolder0(header view); 
      case 1: return new ViewHolder2(data view); 
      ... 
     } 
    } 
} 

如果数据更新,然后只更新您的dataList并调用适配器上的notifyDataSetChange()。

希望它能帮助你:)