单击菜单项时活动未打开

时间:2020-05-30 06:06:08

标签: java android

我正在尝试点击ID为注销但没有任何反应的“注销”选项。下面是我的代码

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.requestpayment,menu);
    return super.onCreateOptionsMenu(menu);
}

@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
    switch (item.getItemId()){
        case R.id.logout:
            Intent intent=new Intent(this,Logout.class);
            this.startActivity(intent);
            break;
    }
    return super.onOptionsItemSelected(item);
}

请帮助

4 个答案:

答案 0 :(得分:0)

onCreateOptionsMenu方法中替换

return super.onCreateOptionsMenu(menu);

通过

return true;

并将super.onOptionsItemSelected(item);中的onOptionsItemSelected()替换为return true

答案 1 :(得分:0)

开始活动后,您必须在onCreateOptionsMenu()onOptionsItemSelected()中返回true。

正确的方法是这样的。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.requestpayment,menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
    switch (item.getItemId()){
        case R.id.logout:
            Intent intent=new Intent(this,Logout.class);
            this.startActivity(intent);
            return true;
    }
    return super.onOptionsItemSelected(item);
}

答案 2 :(得分:0)

如果将重写的方法链接到其超类(即称为super.someMethod()),则意味着您正在请求超类自行处理实现。
您应在此处return true告诉您已成功夸大了该子级 menu中的Activity,或成功处理了选项项目


注意::通常,您需要链接一个onClick()方法调用,其中superclass负责做一些关键的事情。例如:

superclass

答案 3 :(得分:-1)

重新启动Android Studio。让我知道那是否仍然存在