2012-01-23 22 views
2

誰かが同じタブ内で複数のビューを持つことができるかについてもっと多くの光を当てることができますか?私は3つのタブがあります。 私は、ListFragmentである第1タブのコンテンツを読み込むためにFragmentActivityを使用しました。リストの任意の項目をクリックすると、別のサブ項目のリストが表示されなければなりません。これを行うには、内部の静的FragmentActivityクラスを使用しています。このクラスは、新しいリストを動的に追加して新しいリストを表示します。しかし、新しい断片では、私は最初のタブを見ることができません。単一のタブの複数のビュー

タブを元のままにして、フラグメントまたはビューを切り替えるにはどうすればよいですか?下記のように私のコードがある

まだ

ない、それを達成することができ...:

 public void onListItemClick(ListView l, View v, int position, long id) 
    {   
     getListView().setItemChecked(position, true); 

     DetailsFragment details = (DetailsFragment) 
       getFragmentManager().findFragmentById(R.id.titles); 

     if (details == null || details.getShownIndex() != position) 
     {    
      details = DetailsFragment.newInstance(position);     
      FragmentTransaction ft = getFragmentManager().beginTransaction(); 
      ft.replace(R.id.titles, details); 
      ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE); 
      ft.commit(); 
     } 
    } 

レイアウトファイルは以下の通りです:

<?xml version="1.0" encoding="utf-8"? 

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 

    <fragment class="com.example.myapp.NewReqScrLoader$TitlesFragment" 
      android:id="@+id/titles" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" /> 

</FrameLayout> 

は、私がどこか間違っているんですか?

+0

私はListFragment.Butがわかりません。私は、ur要件がhttps://github.com/JakeWharton/Android-ViewPagerIndicatorで満たされていることを願っています。 – siva

答えて

1

サブアイテムを使用して別のList FRAGMENTが作成した最初のListFragmentを置き換える必要があります。新しいFragmentActivityを作成しないでください。

これを行うには、transaction.replaceFragment(..)を使用します。

+0

これを試しました:FragmentTransaction ft = this.getFragmentManager()。beginTransaction(); \t ft.replace(R.id.titles、details);ここではR.id.titlesがレイアウトに追加されますが、詳細は動的フラグメントです。それは正しいことですか?私は取得しています - IllegalArgumentException:IDが見つかりません。 –

関連する問題