Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Listview项目初始选择_Android_Listview_Android Fragments_Android Listview_Navigation Drawer - Fatal编程技术网

Android Listview项目初始选择

Android Listview项目初始选择,android,listview,android-fragments,android-listview,navigation-drawer,Android,Listview,Android Fragments,Android Listview,Navigation Drawer,我有一个导航抽屉,在三个片段之间导航,当我启动我的应用程序时,会显示片段1。在这种情况下,我希望最初选择nav抽屉列表中的第一项。我遵循以下链接:,基于此,我的适配器中有以下内容 if(position==0){ listview.setItemChecked(position, true); } 而且它工作正常,列表中的第一项是预先选择的。但是,当我单击列表中的另一项时,它已被选中,但第一项仍处于选中状态 我已尝试通过设置listview.setItemChecked(po

我有一个导航抽屉,在三个片段之间导航,当我启动我的应用程序时,会显示片段1。在这种情况下,我希望最初选择nav抽屉列表中的第一项。我遵循以下链接:,基于此,我的适配器中有以下内容

if(position==0){
      listview.setItemChecked(position, true);
   }
而且它工作正常,列表中的第一项是预先选择的。但是,当我单击列表中的另一项时,它已被选中,但第一项仍处于选中状态

我已尝试通过设置
listview.setItemChecked(position,false)取消选择该项
但这对我不起作用,所以我的初始选择工作正常,但我不能包含它,除非当用户选择其他项目时我可以取消选择它

有人能帮忙吗

*编辑-添加视图*

  @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        if(convertView==null){
            LayoutInflater mInflater = (LayoutInflater)
                    context.getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
            convertView = mInflater.inflate(R.layout.nav_item_layout, null);
        }
        imgIcon = (ImageView) convertView.findViewById(R.id.nav_item_image);
        txtTitle = (TextView) convertView.findViewById(R.id.nav_item_text);



        if(position==0)
        {
            drawerList.setItemChecked(0,true);
        }

        if(drawerList.isItemChecked(position)){
            if(position!=0){
                drawerList.setItemChecked(0, false);

            }
            imgIcon.setImageResource(selectedIconArray[position]);
            txtTitle.setTextColor(Color.WHITE);
        }else{
            imgIcon.setImageResource(unselectedIconArray[position]);
            txtTitle.setTextColor(Color.parseColor("#949494"));
        }
        txtTitle.setText(navDrawerItems.get(position).getTitle());

        return convertView;
    }
与:


您正在强制始终检查第0行。必须从getViewMethod内部删除两个setItemChecked。将适配器设置为ListView时,请调用setItemChecked。

发布getView方法please@SirKuryaki你知道我可能做错了什么吗?就这么简单…非常有用!
    if(position==0)
    {
        drawerList.setItemChecked(0,true);
    }