2016-05-19 3 views
0

2つのボタンを持つツールバーでナビゲーションドロアを実行しようとしています。ボタンをクリックすると、2つの断片が切り替わるはずです。フラグメントトランジション置換ボタンがクリーンでない

switch (v.getId()) { 
     case R.id.lay_publist_toolbar: 
       android.support.v4.app.Fragment listFrag= new PubListFragment(); 
       FragmentManager listfragmentManager = getSupportFragmentManager(); 
       FragmentTransaction listfragmentTransaction = listfragmentManager.beginTransaction(); 
      listfragmentTransaction.replace(R.id.lay_hole_fragment, listFrag,"i") 
         .addToBackStack(null) 
         .commit(); 
      break; 
     case R.id.lay_maplist_toolbar: 
      android.support.v4.app.Fragment nextFrag= new MapsActivity(); 
      FragmentManager fragmentManager = getSupportFragmentManager(); 
      FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); 
      fragmentTransaction.replace(R.id.lay_hole_fragment, nextFrag,"d") 
        .addToBackStack(null) 
        .commit(); 
      break; 

mainactivity Frameayout内部何が清掃されていない最初のケースで

<android.support.v4.widget.DrawerLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/drawer_layout" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:elevation="7dp"> 

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical"> 

    <include 
     android:id="@+id/toolbar" 
     layout="@layout/toolbar"> 
    </include> 
<FrameLayout 
    android:id="@+id/lay_hole_fragment" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Solo" 
     android:layout_gravity="center_horizontal|top" /> 

    <ImageView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:background="@drawable/common_google_signin_btn_icon_light_normal" 
     android:layout_gravity="center" /> 

    <Button 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Click here" 
     android:layout_gravity="left|center_vertical" /> 
</FrameLayout> 
... 

のXML。後者の場合、フラグメントはGoogle Mapsを実装し、Buttonを除くFrameLayout内のすべてが消去されます。私はボタンの可視性を変えることができることを知っています。 この現象の原因についての助けがありますか?

答えて

0

私はあなたがそれはボタンの問題を解決しない代わりに

fragmentManager.beginTransaction().add(); 
+0

fragmentManager.beginTransaction().replace(); 

を使用しなければならないと思います。しかし、実際に両方のフラグメント間の切り替えには良いです、ありがとう – manolodewiner

関連する問題