我正在尝试在选择项目时更改 NavigationDrawer 中的 textColor。我正在使用 RecyclerView 作为我的滑动布局。这是基于教程:
http://www.androidhive.info/2015/04/android-getting-started-with-material-design/
任何人都可以提出解决方案
提前致谢。
最佳答案
在 NavigationDrawerAdapter 类中定义一个 static int 来表示选中的项
在 NavigationDrawerAdapter.java 中
public class NavigationDrawerAdapter extends RecyclerView.Adapter<NavigationDrawerAdapter.MyViewHolder> {
public static int selected_item = 0;
...
@Override
public void onBindViewHolder(MyViewHolder holder, int position) {
NavDrawerItem current = data.get(position);
holder.title.setText(current.getTitle());
if(position == selected_item)
{
holder.title.setTextColor(Color.RED);
}
else
{
holder.title.setTextColor(Color.BLACK);
}
}
...
}
在 FragmentDrawer.java 中
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
...
recyclerView.addOnItemTouchListener(new RecyclerTouchListener(getActivity(), recyclerView, new ClickListener() {
@Override
public void onClick(View view, int position) {
NavigationDrawerAdapter.selected_item = position;
recyclerView.getAdapter().notifyDataSetChanged();
drawerListener.onDrawerItemSelected(view, position);
mDrawerLayout.closeDrawer(containerView);
}
...
}));
...
}
关于android - NavigationDrawer RecyclerView 选中的项目改变颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31045563/