A と B という 2 つのフラグメントが内部にある Android アクティビティがあります。A 内のボタンをクリックして、B が C、D、または E に切り替えられるようにしたいと考えています。
レイアウトはそれぞれ.xmlを参照し、すべてのレイアウトには、他のフラグメントを呼び出したり、他のものを実行したりするさまざまなボタンがあります....
今main.javaで:
public void stackAFragment(int page) {
//depending on which button on the list is clicked, the corresponding fragment is replaced
if (npage = 1){
Fragment f = new FragmentB();}
if (npage = 2){
Fragment f = new FragmentC();}
if (npage = 3){
Fragment f = new FragmentD();}
FragmentTransaction ft = getFragmentManager().beginTransaction()
ft.replace(R.id.frag_content, f);
ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
ft.addToBackStack(null);
ft.commit();}
次に、A.java にはリスト ビューがあり、リスナーには
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
Main main = (Main) getActivity();
main.stackAFragment(arg2 + 1); }
そしてB.javaで:
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle saved) {
View c = inflater.inflate(R.layout.frag_b, container, false);
return c;}
そしてC.javaで:
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle saved) {
View c = inflater.inflate(R.layout.frag_c, container, false);
return c;}
等々.....
これで、最初のページにフラグメント A と B が表示されます。
しかし、クリックしてフラグメント C に変更すると、フラグメント B は消えず、代わりにフラグメント C がフラグメント B の下に表示されます
クリックしてフラグメント D に変更すると、フラグメント C は消えますが、B は残ります....
どうすれば問題を解決できますか??
ありがとうございました!!!誰かが私を正しい方向に向けることができれば、非常に感謝します.....
追加情報:::: main.xml のレイアウト
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/frags"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".SlidingMenu" >
<fragment
android:id="@+id/frag_content"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
class="com.seapointcorp.enque01.ContentFragment" />
<fragment
android:id="@+id/frag_title"
android:layout_width="@dimen/titles_size"
android:layout_height="match_parent"
class="com.seapointcorp.enque01.TitleFragment" />
</FrameLayout>