【发布时间】:2014-11-19 14:00:27
【问题描述】:
每次我打开一个新活动时,导航抽屉都会滞后。我在谷歌上寻找解决方案,我发现我可以通过使用 Handler 延迟新活动来解决它。我尝试了一点,但没有成功。
来自 MainActivity.java 的一些代码片段:
public void SelectItem(int possition) {
Fragment fragment = null;
Bundle args = new Bundle();
switch (possition) {
case 2:
fragment = new FragmentZero();
break;
case 3:
fragment = new FragmentOne();
break;
case 4:
fragment = new FragmentTwo();
break;
case 5:
fragment = new FragmentThree();
break;
case 7:
fragment = new FragmentTwo();
break;
case 8:
fragment = new FragmentZero();
break;
case 9:
fragment = new FragmentOne();
break;
case 10:
fragment = new FragmentTwo();
break;
case 11:
fragment = new FragmentZero();
break;
case 12:
fragment = new FragmentOne();
break;
case 14:
fragment = new FragmentZero();
break;
case 15:
fragment = new FragmentOne();
break;
case 16:
fragment = new FragmentTwo();
break;
default:
break;
}
fragment.setArguments(args);
FragmentManager frgManager = getFragmentManager();
frgManager.beginTransaction().replace(R.id.content_frame, fragment)
.commit();
mDrawerList.setItemChecked(possition, true);
setTitle(dataList.get(possition).getItemName());
mDrawerLayout.closeDrawer(mDrawerList);
}
和
private class DrawerItemClickListener implements ListView.OnItemClickListener {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
if (dataList.get(position).getTitle() == null) {
SelectItem(position);
}
}
}
【问题讨论】:
-
不是您问题的答案,但您可以像这样捆绑 case 语句以使您的代码更紧凑。请参阅 SwitchDemo2 文章here
-
感谢您的回答,但正如您所说,这不是我的问题。
-
这就是我将其添加为评论的原因 ;)
标签: android navigation lag drawer