web-dev-qa-db-ja.com

getMenuInflater()メソッドの未定義の問題Androidコンテキストメニューの作成

フラグメント内にコンテキストメニュー項目を作成しようとしています。しかし、私はgetMenuInflater()メソッドで問題に直面しています。未定義です。必要なパッケージをすべてインポートしました。私がここで間違っていることを誰かが指摘できますか?

これが私のコードです:

import Android.os.Bundle;
import Android.support.v4.app.Fragment;
import Android.view.ContextMenu;
import Android.view.ContextMenu.ContextMenuInfo;
import Android.view.Gravity;
import Android.view.LayoutInflater;
import Android.view.Menu;
import Android.view.MenuItem;
import Android.view.MenuInflater;
import Android.view.View;
import Android.view.ViewGroup;
import Android.widget.TextView;
import Android.view.MenuItem;

public class FeaturedFragment extends Fragment {
    public FeaturedFragment() {
    }
    public static final String ARG_SECTION_NUMBER = "section_number";

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.featured_fragment,container,false);
        registerForContextMenu(view);
        return view;
    }

    @Override
    public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo)
    {
        super.onCreateContextMenu(menu, v, menuInfo);
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.toggleview_menu, menu);
    }
}

これが私のmenu.xmlです

  <menu xmlns:Android="http://schemas.Android.com/apk/res/Android" >    
      <item Android:id="@+id/toggle_view"
         Android:title="Change to ListView"
         Android:icon="@drawable/collections_view_as_grid"
         Android:showAsAction="always" />
      <item Android:id="@+id/grid_view"
         Android:title="Grid View"
         Android:orderInCategory="99"
         Android:showAsAction="never" />
      <item Android:id="@+id/list_view"
         Android:title="List View"
         Android:orderInCategory="99"
         Android:showAsAction="never" />
  </menu>
21
intrepidkarthi

変化する:

MenuInflater inflater = getMenuInflater();

これに:

MenuInflater inflater = getActivity().getMenuInflater();
45
waqaslam