我想做一个主菜单,这将是不同的取决于用户的喜好。
现在,我在我的XML值中设置了不同的数组,用于标题、图标和字符串值,以便填充回收视图。
所以看起来是这样的:
<string-array name="titlelist_A">
<item>Item 1</item>
<item>Item 2</item>
<item>Item 2</item>
...
</string-array>
<integer-array name="iconlist_A">
<item>@drawable/ic_menu_item1</item>
<item>@drawable/ic_menu_item2</item>
<item>@drawable/ic_menu_item3</item>
.....
</integer-array>
<string-array name="actionlist_A">
<item>Activity1</item>
<item>Activity2</item>
<item>Activity3</item>
.....
</integer-array>在我的适配器构造函数中,我将传递所有我复制的数组(A,B,C,D,E,...)以便将相应的数组传递给用户偏好。
在我的RecyclerView适配器中,我使用这些数组来设置标题、可绘制的和OnClickListener
@Override
public void onBindViewHolder(MenuViewHolder holder, int position) {
holder.title.setText(titleList[position]);
holder.icon.setImageResource(iconList.getResourceId(position,0));
}这似乎是一个沉重的解决方案,我想知道是否有人遇到过类似的问题,他们发现了什么……
发布于 2017-02-01 17:26:05
好了,我终于使用了一个菜单:
PopupMenu p = new PopupMenu(context, null);
menu = p.getMenu();
context.getMenuInflater().inflate(R.menu.menu_b, menu);在我的适配器中:
MenuItem item = menu.getItem(position);
holder.title.setText(item.getTitle());
holder.icon.setImageDrawable(item.getIcon());https://stackoverflow.com/questions/41975413
复制相似问题