我想從onClick監聽器中的ImageButton調用optionMenu,但得到以下異常。從ImageButton的OpenOptionMenu給出空指針異常
07-19 01:08:09.693: E/AndroidRuntime(15133): java.lang.NullPointerException: Attempt to invoke interface method 'android.view.MenuItem android.view.Menu.getItem(int)' on a null object reference
public class myApp extends Activity implements OnClickListener {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
}
/** Called when the activity is first created. */
@Override
public void onPostCreate(Bundle savedInstanceState) {
super.onPostCreate(savedInstanceState);
setContentView(R.layout.main);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.window_title);
menu_icon = (ImageView) findViewById(R.id.icon);
infoBtn = (ImageButton) findViewById(R.id.pfkey_button);
menu_icon.setImageResource(R.drawable.info_icon);
menu_icon.setOnClickListener(this);
infoBtn.setOnClickListener(this);
//Create Terminal View
terminalView = (TerminalView)findViewById(R.id.terminalView);//new TerminalView(this);
registerForContextMenu(terminalView);
}
public void onClick(View v) {
KeyEvent event = null;
if (v == infoBtn) {
openOptionsMenu();
}
if (v == menu_icon) {
openOptionsMenu();
}
}
}
我還試圖用`infoBtn =(的ImageButton)myApp.this.findViewById(R.id.pfkey_button);但不工作
請張貼您的完整代碼,以便我們能夠理解流程。直到那時,看看這個教程,可能會有所幫助:http://www.javatpoint.com/android-option-menu-example – Kushan
確保覆蓋onCreateOptionsMenu(菜單菜單)並首先膨脹菜單,然後使用onOptionsItemSelected( MenuItem項目)來選擇一個項目 – Kushan
在android選項菜單是出現在您的工具欄內的東西。你在找那個嗎?還有一件事叫做PopupMenu,也許這就是你以後的... – Kushan