【发布时间】:2014-08-25 20:22:01
【问题描述】:
当我启动我的应用程序片段 1 时,我有一个在三个片段之间导航的导航抽屉。在这种情况下,我希望最初选择导航抽屉列表中的第一项。我点击了这个链接:ListView Item selection Android,基于此,我的适配器中有以下内容,
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;
}
【问题讨论】:
-
请发布您的 getView 方法
-
@SirKuryaki 你对我可能做错了什么有什么想法吗?
标签: android listview android-fragments android-listview navigation-drawer