java - 从菜单项打开 Activity

标签 java android menuitem

我正在尝试使用 Intent,但它在抽屉导航中不起作用。它仅适用于 native Menuitem(3 分),但我想在抽屉导航中使用它。

有人可以帮我吗?

@Override
public boolean onOptionsItemSelected(MenuItem item){
    if (mToggle.onOptionsItemSelected(item)){
        return true;
    }
    return super.onOptionsItemSelected(item);
}



public boolean onNavigationItemSelected(MenuItem item) {

    int id = item.getItemId();

    if (id == R.id.menu_one) {
        Intent intent = new Intent(this, Activity1.class);
        startActivity(intent);
    } else if (id == R.id.menu_two)  {
        Intent intent = new Intent(this, Activity2.class);
        startActivity(intent);

    }


    DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawerLayout);
    drawer.closeDrawer(GravityCompat.START);
    return true;
}

最佳答案

不要使用 this 关键字,而是使用 getApplicationContext()

Intent intent = new Intent(getApplicationContext(), Activity2.class);
startActivity(intent);

startActivity(new Intent(Activity1.class, Activity2.class);

关于java - 从菜单项打开 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47935582/

相关文章:

java - 仅可绘制的 ListView

java - 在没有实际 servlet 容器的情况下运行 spring + hibernate 应用程序

java - 使用自定义类在 HashMap 上调用 containsKey

java - 如何优化将具有多个字符串和图像的条目插入到 SQLite 数据库中

android - Android 中的自定义选项菜单栏问题

java - 系统剪贴板操作的右键菜单项

css - 子菜单项未在完整浏览器中显示 (CSS)

c# - 在 Java 中从字节获取 int,首先在 C# 中编码

android - 我可以在 Service.onStartCommand 中调用 stopSelf() 吗?

android - 如何在 Android 中使用 Java 邮件将应用程序电子邮件同步到服务器电子邮件?