2016-03-08 47 views
0

我膨脹了onCreateOptionsMenu中的菜單,並處理onOptionsItemSelected功能,但我只是想知道,什麼通過膨脹的菜單onOptionsItemSelected。我正在考慮創建選項菜單,但我不確定。onCreateOptionsMenu是否將菜單傳遞給onOptionsItemSelected?

+0

在菜單中的項目被傳遞到onOptionsItemSelected(菜單項項)。因此,首先調用onCreateOptionsMenu(菜單菜單),然後將菜單項傳遞給onOptionsItemSelected(MenuItem項) – Inducesmile

回答

0

Android首次需要一個菜單​​來爲特定的Activity實例調用onCreateOptionsMenu()。只要該活動處於活動狀態,您將創建並返回的菜單及其所有MenuItem對象都將被記住,並可用於後續對onPrepareOptionsMenu()和onOptionsItemSelected()的調用。當活動實例被銷燬時,所有這些對象都將消失,並且將爲活動的新實例創建新的對象。

0

嘗試在onCreateOptionsMenu

@Override 
    public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { 
     inflater.inflate(R.menu.menu_home, menu); 
    } 

和onOptionsItemSelected

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()) { 
     case R.id.action_search: 
      final SearchView searchView = (SearchView) MenuItemCompat.getActionView(item); 

      return true; 
     default: 
      return false; 
    } 

做到用項目作爲菜單

相關問題