ActionBarSherlock を使用して Android アプリを作成しています
私のレイアウトファイルは次のとおりです。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<FrameLayout
android:id="@+id/fragment_menu"
android:layout_width="@dimen/menu_size"
android:layout_height="wrap_content"/>
<FrameLayout
android:id="@+id/dummy"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
メニュー フラグメントで選択されているカテゴリに応じて、ダミーの FrameLayout.Eg のフラグメントを置き換えます。
Bundle extras = new Bundle();
extras.putInt(ProgramDetailFrament.EXTRA_PROGRAM_ID, programId);
final ProgramDetailFrament fragment = ProgramDetailFrament.newInstance(extras);
getSupportFragmentManager().beginTransaction()
.replace(R.id.dummy, fragment)
.addToBackStack(null)
.commit();
getSupportFragmentManager().executePendingTransactions();
しかし、表示されているフラグメントを操作すると、置き換えられたフラグメントはまだタッチ/クリック イベントを受け取ります。SherlockFragment がこの問題に関連しているかどうかわかりませんか?
表示されているフラグメントのルート レイアウトでクリック イベントを設定し、このイベントでは何もしないことで解決しました。しかし、それは醜い解決策のようです。
解決方法は誰でも知っています。前もって感謝します。