点击之前:
点击后:
我的代码存在问题,点击操作栏操作会显示操作的标题。然后,如果您单击标题,那么就是如何访问onclick监听器。非常奇怪......我知道没有代码就很难分辨,但我不在,很快就会发布。只是想四处询问是否有人经历过类似的事情。
动作条:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/action_settings"
android:title="@string/hello1"
app:showAsAction="never"/>
</menu>
onClickListener:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle presses on the action bar items
switch (item.getItemId()) {
case R.id.action_settings:
onCreateDialog();
return true;
case android.R.id.home:
finish();
return true;
}
return super.onOptionsItemSelected(item);
}
public void onCreateDialog() {
String[] string= new String[]{"Add to Calendar", "Share"};
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Options")
.setItems(string, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
switch (which) {
case 0:...................}
答案 0 :(得分:1)
这是当前菜单设置方式的预期行为。
<item
android:id="@+id/action_settings"
android:title="@string/hello1"
app:showAsAction="never"/> <!-- Don't show this action until the overflow menu is shown -->
将showAsAction
设置为never
后,只有在显示溢出菜单后才会显示操作。 showAsAction
的可用选项包括:
["ifRoom" | "never" | "withText" | "always" | "collapseActionView"]
在您的情况下,因为您只有一个菜单项,所以可以使用always
。
有关详细信息,请参阅menu resource documentation。
您应该可以在Android Studio中预览此内容(请参阅下面的屏幕截图)
答案 1 :(得分:0)
我通过将活动扩展到appcompatactivity而不是activity来修复它。奇怪的错误。然后它没有这样做。