日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

onCreateOptionsMenu

發(fā)布時間:2023/12/10 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 onCreateOptionsMenu 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

onCreateOptionsMenu
----只在Activity創(chuàng)建時調(diào)用一次!之后不會再被調(diào)用!


onPrepareOptionsMenu
----每次display menu之前,都會調(diào)用該方法,
  只要按一次menu按鍵,就會調(diào)用一次。
  所以你會發(fā)現(xiàn)每次只要按一次menu按鍵,
  menu選單就會多兩個(因為我們預(yù)設(shè)是兩個)

  你可以利用onPrepareOptionsMenu來做update menu狀態(tài)的動作

?

?? 所以如果在menu創(chuàng)建之后,想對menu進行動態(tài)的修改,那么就不能再對onCreateOptionsMenu做修改,要重寫onPrepareOptionsMenu(Menumenu)方法。

????注意:在使用onPrepareOptionsMenu的時候,如果你每次都調(diào)用了menu.add()方法的話,那么菜單中的項目就越來越多,所以,一般情況下是要調(diào)用一下menu.clear()的。

super.onPrepareOptionsMenu(menu);

menu.clear();

?

?

?

在fragment中的onCreateOptionsMenu和Activity中的參數(shù)不同的,多了個MenuInflater,所以在fragment中調(diào)用MenuInflater的時候,要這么調(diào)用:

MenuInflater inflater =?this.getActivity().getMenuInflater();

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
// 在onCreateOptionsMenu()之前必須在onCreate中調(diào)用setHasOptionsMenu(true)
inflater.inflate(R.menu.menu_three, menu); ??
super.onCreateOptionsMenu(menu, inflater);
}

?

Fragment通過實現(xiàn)onCreateOptionsMenu()方法給Activity的可選菜單(包括動作欄)提供菜單項,但是為了這個方法能夠接受調(diào)用,必須在onCreate()方法中調(diào)用setHasOptionsMenu()方法來指示這個Fragment應(yīng)該作為可選菜單的添加項(否則,這個Fragment不接受對onCreateOptionsMenu()方法的調(diào)用)。

然后,你把來自Fragment的要添加到可選菜單中項目追加到既存的菜單中。當菜單項被選擇時,這個Fragment也接受onOptionsItemSelected()的回調(diào)。

你也能夠通過調(diào)用registerForContextMenu()方法在Fragment布局中注冊一個視圖來提供一個上下文菜單。當用戶打開上下文菜單時,Fragment會接受對onCreateContextMenu()方法的調(diào)用。當用戶選擇一個菜單項時,Fragment會接受對onContextItemSelected()方法的調(diào)用。

注意:盡管Fragment添加的每個菜單項都接受一個on-item-selected回調(diào),但是當用戶選擇一個菜單項時,對應(yīng)的Activity會首先受到相應(yīng)的回調(diào)。如果Activity的on-item-selected回調(diào)的實現(xiàn)不處理被選擇的項目,那么事件會被傳遞給Fragment的回調(diào)。這是真正的可選菜單和上下文菜單。

關(guān)于菜單的更多信息,請看菜單(Menus)和動作欄(Action Bar)開發(fā)指南。

轉(zhuǎn)載于:https://www.cnblogs.com/mingfeng002/p/3432929.html

總結(jié)

以上是生活随笔為你收集整理的onCreateOptionsMenu的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。