我的项目中有3个活动,即主要活动,活动1和活动2。我还为我的项目添加了一个导航抽屉。我想分别单击Home,Videos,ContactUs菜单项时切换活动。但我不知道该怎么做。
int id = item.getItemId();
//Home menu item is clicked
if (id == R.id.home){
Intent intent = new Intent(MainActivity.this, MainActivity.class);
MainActivity.this.startActivity(intent);
return true;
}
我测试了这段代码,但它失败了。
答案 0 :(得分:0)
不要忘记将这两个活动添加到AndroidManifest.xml:
Intent launchNewIntent = new Intent(CurrentClass.this,SecondClass.class);
startActivityForResult(launchNewIntent, 0);
答案 1 :(得分:0)
您可以复制此代码并将其粘贴到相应的活动中
将其复制到onNavigationItemSelected()
MainActivity.class
int id = item.getItemId();
if (id == R.id.Home) {
} else if (id == R.id.Videos) {
Intent intent = new Intent(MainActivity.this,Activity1.class);
startActivity(intent);
} else if (id == R.id.ContactUs) {
Intent intent = new Intent(MainActivity.this,Activity2.class);
startActivity(intent); }
将其复制到onNavigationItemSelected()
Activity1.class
int id = item.getItemId();
if (id == R.id.Home) {
Intent intent = new Intent(Activity1.this,MainActivity.class);
startActivity(intent);
} else if (id == R.id.Videos) {
} else if (id == R.id.ContactUs) {
Intent intent = new Intent(Activity1.this,Activity2.class);
startActivity(intent); }
将其复制到onNavigationItemSelected()
Activity2.class
int id = item.getItemId();
if (id == R.id.Home) {
Intent intent = new Intent(Activity2.this,MainActivity.class);
startActivity(intent);
} else if (id == R.id.Videos) {
Intent intent = new Intent(Activity2.this,Activity1.class);
startActivity(intent);
} else if (id == R.id.ContactUs) {
}
最后,由于您无法进行相同的活动,因此可以使用
重新加载/刷新它finish();
startActivity(getIntent());
您现在可以通过在空白中插入以上两行来重新加载活动if / else如果相应的活动在我的代码中如Home在MainActivity.class中为空。
我没有写上面两行并留下一个id==?
为空,因为留空不会做任何事情。