2012-01-23 56 views
2

有人可以更多地瞭解一個人如何在同一個標​​籤中有多個視圖?我有3個選項卡。 我已經使用FragmentActivity來加載第一個選項卡的內容,這是一個ListFragment。單擊列表中的任何項目時,必須顯示另一個子項目列表。爲此,我使用內部靜態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我希望你的要求滿足與https://github.com/JakeWharton/Android-ViewPagerIndicator – siva

回答

1

您應該替換第一個ListFragment,其中使用子項目構建另一個列表FRagment。不要創建新的FragmentActivity。

使用transaction.replaceFragment(..)來做到這一點。

+0

試過這樣做:FragmentTransaction ft = this.getFragmentManager()。beginTransaction(); \t ft.replace(R.id.titles,details);這裏R.id.titles被添加到佈局中,而細節是一個動態片段。這是正確的做法嗎?我越來越 - IllegalArgumentException:找不到id的視圖。 –