2

ご存知のように、最終的にはAndroidサポートライブラリを模倣/実装するライブラリContextMenuを使用しながらインフレートしようとすると、型の問題が発生します。ActionBarSherlock

レイアウト コンテンツを設定するがあり、SherlockFragmentActivityそのコンテンツ内に 2 つのフラグメントが存在します。それらのフラグメントの 1 つがSherlockListFragment. の 内で、onCreateSherlockListFragment登録するために電話をかけますContextMenu

registerForContextMenu(getListView());

メニューを拡張しようとすると、問題が発生します。

listView.setOnCreateContextMenuListener(new View.OnCreateContextMenuListener() {
       @Override
       public void onCreateContextMenu(ContextMenu contextMenu, View view, ContextMenu.ContextMenuInfo contextMenuInfo) {
                MenuInflater inflater = getSherlockActivity().getSupportMenuInflater();
                inflater.inflate(R.menu.lot_menu, contextMenu);
            }
        });

inflateメソッド パラメーター内で指定された型が原因で呼び出すことができませんがcom.actionbarsherlock.view.Menu、渡された型はandroid.view.ContextMenu.

Menuアクションバー内でa を膨らませるのは些細なことだったので、何かが欠けているようですContextMenuが、サポートフレームワークを使用するときに問題が発生しているようです。

必要に応じてサポート フレームワークを利用するために適切に登録し、その後ContextMenu.

4

1 に答える 1

3

にインフレートするgetMenuInflater()代わりに使用してみてください。getSupportMenuInflater()ContextMenu

于 2013-01-22T21:21:32.357 に答える