gpt4 book ai didi

android - onOptionsItemSelected 未调用

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:48:25 25 4
gpt4 key购买 nike

我的操作栏中有一个菜单项列表。每个项目点击应该触发不同的方法。但是永远不会调用 onOptionsItemSelected。

这是在 MainActivity 中定义 actionbar 的方式:

public class MainActivity extends AppCompatActivity {
...
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
return super.onCreateOptionsMenu(menu);
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.action_settings_1) {
//do something
return true;
} else if (id == R.id.action_settings_2) {
//do something
return true;
} else if (id == R.id.action_settings_1) {
//do something
return true;
}
return super.onOptionsItemSelected(item);
}
...
}

这是操作栏菜单布局 menu_main:

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context="com.example.MainActivity">
<item
android:id="@+id/action_settings_1"
android:orderInCategory="1"
android:title="Item 1"
app:showAsAction="never" />
<item
android:id="@+id/action_settings_2"
android:orderInCategory="2"
android:title="Item 2"
app:showAsAction="never" />
<item
android:id="@+id/action_settings_3"
android:orderInCategory="3"
android:title="Item 3"
app:showAsAction="never" />
</menu>

如何设置操作栏以便在单击操作栏项目时调用 onOptionsItemSelected?

最佳答案

在您的 onCreateOptionsMenu 中,返回 true 而不是调用 super。应该这样做

关于android - onOptionsItemSelected 未调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42705429/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com