我有一个导航抽屉,里面有几个项目。但是当我点击它时,我希望它们中的一些是不可选择的。 我已尝试更改适配器,但单击时仍会显示选择器。我也试图更改listview属性,但我找不到我想要的方法。
这个问题有解决办法吗?或者或许是另一种方式来实现它?任何教程将不胜感激。谢谢!
答案 0 :(得分:0)
我过去做过的只是阻止在if语句中启动项目。没有理由隐藏它,除非你真的需要。您还可以更改项目颜色以使其看起来已禁用。
private class DrawerItemClickListener implements ListView.OnItemClickListener {
@Override
public void onItemClick(AdapterView parent, View view, int position, long id) {
int tempHold;
tempHold=mSelectedItem;
mSelectedItem=position;
switch (position) {
...
case 2:
//For if no user is logged into app, do not launch
if (userID.equals(getString(R.string.no_user_logged_on))) {
Toast.makeText(this, getString(R.string.no_worklist_no_user), Toast.LENGTH_LONG).show();
//reset your drawerSelector to previous item
mSelectedItem=tempHold;
break;
}
//Log.wtf("userID: ","\""+userID+"\"");
fragmentCreator(position, param1, "");
break;
default:
Toast.makeText(getApplicationContext(), "Position "+position+" not configured " +
"yet", Toast.LENGTH_LONG).show();
break;
}
mDrawerLayout.closeDrawer(mDrawerLinear); //Close drawer after selection
}
}