Activity 在Menu長按時候可能出現bug,在下部彈出popupMenu,想取消可以如以下方法,傳回false;
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_help, menu);
return false;
}
public class MainActivity extends Activity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
/**
* 此方法用于初始化菜單,其中menu參數就是即将要顯示的Menu執行個體。 傳回true則顯示該menu,false 則不顯示;
* (隻會在第一次初始化菜單時調用) Inflate the menu; this adds items to the action bar
* if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
/**
* 在onCreateOptionsMenu執行後,菜單被顯示前調用;如果菜單已經被建立,則在菜單顯示前被調用。 同樣的,
* 傳回true則顯示該menu,false 則不顯示; (可以通過此方法動态的改變菜單的狀态,比如加載不同的菜單等) TODO
* Auto-generated method stub
return super.onPrepareOptionsMenu(menu);
}
@Override
public void onOptionsMenuClosed(Menu menu) {
/**
* 每次菜單被關閉時調用. (菜單被關閉有三種情形,menu按鈕被再次點選、back按鈕被點選或者使用者選擇了某一個菜單項) TODO
* Auto-generated method stub
super.onOptionsMenuClosed(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
/**
* 菜單項被點選時調用,也就是菜單項的監聽方法。
* 通過這幾個方法,可以得知,對于Activity,同一時間隻能顯示和監聽一個Menu 對象。 TODO Auto-generated
* method stub
return super.onOptionsItemSelected(item);
}
}