2012-06-20 71 views
1

我有大約60個片段「ListFragment」,現在我使用每個Listfragment與另一個片段在同一個佈局文件中,像這樣。設置片段類在通貨膨脹時間

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="horizontal" > 

     <fragment 
      android:id="@+id/carDetailedFragment" 
      android:name="com.ui.fragment.CarDetailedFragment" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" /> 

    <fragment 
     android:id="@+id/carcategorylistfragment" 
     android:name="com.ui.fragment.CarCategoryListFragment" 
     android:layout_width="0dp" 
     android:layout_height="fill_parent" 
     android:layout_weight="1" /> 

</LinearLayout> 

的問題是:我是否需要使60佈局文件對每個片段或我可以使含有2片段,並設置其類

android:name 

屬性在充氣時間,如設置一個templete佈局屬性爲視圖前

setContentView(R.layout.somelayout); 
View v = findViewById(R.id.src); 
v.setVisibility(View.GONE); 
+0

你能改述你的問題......它沒有多大意義。 –

回答

1

是的,但你只能在Java代碼中做到這一點。 在你的XML中,你必須有一些Fragment的容器。我相信我只是使用FrameLayout。然後你可以做類似

YourFragment details = new YourFragment(); 
getFragmentManager().beginTransaction().add(R.id.container, details).commit(); 

編輯:作爲一個說明。我不相信你真的想要一次新增60個碎片並保持它們並將它們留在記憶中。你需要問自己的問題是「這是否需要它是自己的生命週期?」如果答案是否定的,那麼你可以創建一個自定義視圖。

0

我有大量的ListView活動的佈局,並使它只需要一個ListView片段。 Use this - 它將大大減少所需的類和冗餘代碼的數量。