1

フラグメントで startActionMode を使用しようとしましたが、このエラーが発生しました

mMode = startActionMode(新しい AnActionModeOfEpicProportions()); 55号線

http://pastebin.com/d9jzg9UC

これをスラブする方法は?ActionMode は Fragment でサポートされていませんか?

ありがとう

4

2 に答える 2

4

静的フラグメント (つまり、アクティビティのインスタンスとは別のもの) からアクティビティのインスタンスメソッドを呼び出そうとしています。を使用して、フラグメントを含むアクティビティにいつでもアクセスできることを思い出してください。そう:getActivity()

  if (getActivity() != null) {
    mMode = getActivity().startActionMode(new AnActionModeOfEpicProportions());
  }

よりクリーンなアプローチは、フラグメントとアクティビティ間の通信を管理するインターフェイス クラスを宣言することです。

于 2012-09-29T13:08:05.713 に答える
0

サポートライブラリで使用できます:

((ActionBarActivity) getActivity()).startSupportActionMode (new AnActionModeOfEpicProportions());
于 2014-06-19T10:26:13.903 に答える