フラグメントにメニューを追加するにはどうすればよいですか?

HiddenDroid:

フラグメントを使用すると、ActionBarにメニューが表示されません。onCreateOptionsMenu()メソッドの実装にもかかわらず、コードのどこに問題があるのか​​わかりません。これが私が使用しているコードです:

public class LesAvis extends Fragment {

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    setHasOptionsMenu(true);
    View rootView = inflater.inflate(R.layout.avis, container,false);
    ListView listeAvis = (ListView) rootView.findViewById(R.id.listView);
    return rootView;

}

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

}

ただし、onCreateOptionsMenu()メソッドを実装するためにコードのこの部分を使用すると、必要なものが得られます(アクションバーのメニュー)。

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    menu.add("Compte")
    .setIcon(R.drawable.ic_compte)
    .setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
    menu.add("Compte")
    .setIcon(R.drawable.ic_historique)
    .setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
    menu.add("Compte")
    .setIcon(R.drawable.ic_param)
    .setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
}
HiddenDroid:

各フラグメントのメニューを追加するには、多くの手順を実行する必要があります。

1)まず、以下のようにフラグメントのonCreateView()にsetHasOptionsMenu(true)を追加します。

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
    setHasOptionsMenu(true);
    ....
}

2)以下のようにフラグメントのonCreateOptionsMenu()メソッドをオーバーライドします。

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

3)次のように、アクティビティのonOptionsItemSelected()メソッドをオーバーライドします。

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    if (mDrawerToggle.onOptionsItemSelected(item)) {
        return true;
    }
    Intent i;
    switch (item.getItemId()) {
        case R.id.action_param:
            i = new Intent(this, Settings.class);
            startActivity(i);
            return true;

        case R.id.action_history:
            i = new Intent(this, HistoryMenu.class);
            startActivity(i);
            return true;
    }
    return onOptionsItemSelected(item);
}

4)フラグメントのonOptionsItemSelected()やアクティビティのonCreateOptionsMenu()をオーバーライドしないでください。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

NavigationViewからフラグメントにオプションメニューを追加するにはどうすればよいですか?

分類Dev

プラグインを作成して、Eclipseプラットフォームの既存のメニューから既存のサブメニューにメニュー項目を追加するにはどうすればよいですか?

分類Dev

フラグメントごとにツールバーに異なるメニューを設定するにはどうすればよいですか?

分類Dev

トップバーのメニュー項目を別のフラグメントに変更するにはどうすればよいですか

分類Dev

異なるフラグメントで異なるメニューオプションを作成するにはどうすればよいですか?

分類Dev

メニューバーを選択した後にフラグメントタブを更新するにはどうすればよいですか?

分類Dev

onclickイベントをWordpressメニューに追加するにはどうすればよいですか?

分類Dev

AndroidStudioのスライドメニューからフラグメントとタブを接続するにはどうすればよいですか?

分類Dev

AndroidStudioのスライドメニューからフラグメントとタブを接続するにはどうすればよいですか?

分類Dev

Eclipseプラグイン:[表示]メニューにエントリを追加するにはどうすればよいですか?

分類Dev

異なるフラグメントのオプションメニューを変更するにはどうすればよいですか?

分類Dev

プログラムで追加された後のフラグメントのビューを取得するにはどうすればよいですか?

分類Dev

Matlabをメインメニューに追加するにはどうすればよいですか?

分類Dev

Matlabをメインメニューに追加するにはどうすればよいですか?

分類Dev

ビューをフラグメントで膨らませるにはどうすればよいですか?

分類Dev

このコードにリストビューフラグメントを追加するにはどうすればよいですか?

分類Dev

Androidレイアウトのフラグメントに2つのリストビューを追加するにはどうすればよいですか?

分類Dev

VsCodeの「アウトライン」ビューにコンテキストメニューを追加するにはどうすればよいですか?

分類Dev

odoo10のリーフトップメニューにサブメニューを追加するにはどうすればよいですか?

分類Dev

swtのラベルにメニューを追加するにはどうすればよいですか

分類Dev

コンテキストメニューに「PlaywithVLC(ディスクメニューなし)」を追加するにはどうすればよいですか?

分類Dev

Androidメニューに「Aboutus」オプションを追加するにはどうすればよいですか?

分類Dev

メニューフライアウトに真のコーナー半径を追加するにはどうすればよいですか?

分類Dev

スタートメニューの右側にフォルダエントリを追加するにはどうすればよいですか?

分類Dev

フラグメントとアクティビティをビューページャーに追加して、フラグメントがスワイプで表示されるようにするにはどうすればよいですか?

分類Dev

Windowsで一般的にファイルのコンテキストメニュー項目を追加するにはどうすればよいですか?

分類Dev

フラグメントを既存のフラグメントに動的に追加するにはどうすればよいですか?

分類Dev

シフトビューにアニメーションを追加するにはどうすればよいですか?

分類Dev

WPFグリッドの行全体にコンテキストメニューを追加するにはどうすればよいですか?

Related 関連記事

  1. 1

    NavigationViewからフラグメントにオプションメニューを追加するにはどうすればよいですか?

  2. 2

    プラグインを作成して、Eclipseプラットフォームの既存のメニューから既存のサブメニューにメニュー項目を追加するにはどうすればよいですか?

  3. 3

    フラグメントごとにツールバーに異なるメニューを設定するにはどうすればよいですか?

  4. 4

    トップバーのメニュー項目を別のフラグメントに変更するにはどうすればよいですか

  5. 5

    異なるフラグメントで異なるメニューオプションを作成するにはどうすればよいですか?

  6. 6

    メニューバーを選択した後にフラグメントタブを更新するにはどうすればよいですか?

  7. 7

    onclickイベントをWordpressメニューに追加するにはどうすればよいですか?

  8. 8

    AndroidStudioのスライドメニューからフラグメントとタブを接続するにはどうすればよいですか?

  9. 9

    AndroidStudioのスライドメニューからフラグメントとタブを接続するにはどうすればよいですか?

  10. 10

    Eclipseプラグイン:[表示]メニューにエントリを追加するにはどうすればよいですか?

  11. 11

    異なるフラグメントのオプションメニューを変更するにはどうすればよいですか?

  12. 12

    プログラムで追加された後のフラグメントのビューを取得するにはどうすればよいですか?

  13. 13

    Matlabをメインメニューに追加するにはどうすればよいですか?

  14. 14

    Matlabをメインメニューに追加するにはどうすればよいですか?

  15. 15

    ビューをフラグメントで膨らませるにはどうすればよいですか?

  16. 16

    このコードにリストビューフラグメントを追加するにはどうすればよいですか?

  17. 17

    Androidレイアウトのフラグメントに2つのリストビューを追加するにはどうすればよいですか?

  18. 18

    VsCodeの「アウトライン」ビューにコンテキストメニューを追加するにはどうすればよいですか?

  19. 19

    odoo10のリーフトップメニューにサブメニューを追加するにはどうすればよいですか?

  20. 20

    swtのラベルにメニューを追加するにはどうすればよいですか

  21. 21

    コンテキストメニューに「PlaywithVLC(ディスクメニューなし)」を追加するにはどうすればよいですか?

  22. 22

    Androidメニューに「Aboutus」オプションを追加するにはどうすればよいですか?

  23. 23

    メニューフライアウトに真のコーナー半径を追加するにはどうすればよいですか?

  24. 24

    スタートメニューの右側にフォルダエントリを追加するにはどうすればよいですか?

  25. 25

    フラグメントとアクティビティをビューページャーに追加して、フラグメントがスワイプで表示されるようにするにはどうすればよいですか?

  26. 26

    Windowsで一般的にファイルのコンテキストメニュー項目を追加するにはどうすればよいですか?

  27. 27

    フラグメントを既存のフラグメントに動的に追加するにはどうすればよいですか?

  28. 28

    シフトビューにアニメーションを追加するにはどうすればよいですか?

  29. 29

    WPFグリッドの行全体にコンテキストメニューを追加するにはどうすればよいですか?

ホットタグ

アーカイブ