背景:我试图在操作栏中添加一个编辑“按钮”(即菜单项),以在TextView和EditText之间切换。我工作了。现在,我试图在单击按钮后将按钮中的文本更改为“保存”。
问题:我找不到菜单项ByById-它返回null。谁能告诉我我在做什么错?
以下是菜单:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/itEdit"
android:title="EDIT"
app:showAsaction="always"
/>
</menu>
这是菜单设置(即,扩展操作栏)
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu_written_note,menu);
return true;
}
@Override
public boolean onmenuOpened(int featureId,Menu menu){
// A global variable s.t. I could refer to it and update the text
itEdit = findViewById(R.id.itEdit);
return true;
}
以下是切换部分:
public void toggleEdit() {
if(isEditing) {
// Editing -> Viewing
// Toggling TextView and EditText
if(itEdit != null) { // It is always null
itEdit.setTitle("EDIT");
}
} else {
// Viewing -> Editing
// Toggling TextView and EditText
if(itEdit != null) { // It is always null
itEdit.setTitle("SAVE");
}
}
isEditing = !isEditing;
}