NavigationDrawer RecyclerView所选项目更改颜色 [英] NavigationDrawer RecyclerView selected items change color

查看:100
本文介绍了NavigationDrawer RecyclerView所选项目更改颜色的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我选择项目时,我正在尝试更改我的NavigationDrawer中的textColor.我正在使用RecyclerView作为滑动布局.这是基于教程的:

I am trying to change the textColor in my NavigationDrawer when item is selected.I am using RecyclerView as my swipe layout. This is based on the tutorial:

http://www.androidhive.info /2015/04/android-getting-started-with-material-design/

任何人都可以提出解决方案

Anyone can suggest the solution

预先感谢.

推荐答案

在NavigationDrawerAdapter类中定义一个静态int来表示所选项目

Define a static int in NavigationDrawerAdapter class to represent the selected item

在NavigationDrawerAdapter.java

In 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

In 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);
        }

        ...
    }));

    ...
}

这篇关于NavigationDrawer RecyclerView所选项目更改颜色的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆