1

我已經在我的xml文件中構建了一個GridView,現在我想將它填充到Fragment類中。 (該片段類使用佈局)Android - 如何從XML中查看並在碎片中使用它?

userhome.xml

<GridView xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/home_gridview" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:layout_below="@+id/user_avatar" 
android:paddingTop="16dp" 
android:columnWidth="90dp" 
android:numColumns="auto_fit" 
android:verticalSpacing="10dp" 
android:horizontalSpacing="10dp" 
android:stretchMode="columnWidth" 
android:gravity="center" /> 

public class UserHomeFragment extends Fragment { 

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 

    return inflater.inflate(R.layout.userhome, container, false); 

} 

我真的不知道怎麼把我的 「home_gridview」,我什麼都試過,但沒有工作! 我需要這個,因爲我想在我的一個操作欄的選項卡中使用它。你能幫我一些代碼嗎? 謝謝你們!

回答

2

包裝你GridViewLinearLayout(或其他一些佈局)是這樣的:

<LinearLayout 
GridView xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/home_layout" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:orientation="vertical"> 
    <GridView android:id="@+id/home_gridview" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_below="@+id/user_avatar" 
    android:paddingTop="16dp" 
    android:columnWidth="90dp" 
    android:numColumns="auto_fit" 
    android:verticalSpacing="10dp" 
    android:horizontalSpacing="10dp" 
    android:stretchMode="columnWidth" 
    android:gravity="center" /> 
</LinearLayout> 

現在onCreateView通過ID找到你GridView

public class UserHomeFragment extends Fragment { 

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 

    View view = inflater.inflate(R.layout.userhome, container, false); 
    GridView gridView = (GridView) view.findViewById(R.id.home_gridview);//must be your R not android.R 
    //use your grid view 

    return view; 

} 
+0

謝謝您的幫助! – hyperloris 2012-07-15 17:52:44

相關問題