Android 如何从main.xml为所有LinearLayout创建数组?

Android 如何从main.xml为所有LinearLayout创建数组?,android,arrays,android-linearlayout,Android,Arrays,Android Linearlayout,我想创建一个LinearLayouts数组。在我的应用程序中,我设计了一个包含10个LinearLayouts的xml文件,其中LinearLayouts包含每个布局的布局id。我想为所有LinearLayout维护一个LinearLayout数组。我如何才能做到这一点?//main.xml //main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://sche

我想创建一个
LinearLayout
s数组。在我的应用程序中,我设计了一个包含10个
LinearLayout
s的xml文件,其中
LinearLayout
s包含每个布局的布局id。我想为所有
LinearLayout
维护一个
LinearLayout
数组。我如何才能做到这一点?

//main.xml
    //main.xml
<?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="vertical" >

    <LinearLayout
        android:id="@+id/linear1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
         >
         <ImageView 
             android:src="@drawable/ic_launcher"
           android:layout_width="fill_parent"
        android:layout_height="wrap_content"  
             />
</LinearLayout>
<LinearLayout
        android:id="@+id/linear2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
         >
         <ImageView 
             android:src="@drawable/ic_launcher"
           android:layout_width="fill_parent"
        android:layout_height="wrap_content"  
             />
</LinearLayout>
<LinearLayout
        android:id="@+id/linear3"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
         >
         <ImageView 
             android:src="@drawable/ic_launcher"
           android:layout_width="fill_parent"
        android:layout_height="wrap_content"  
             />
</LinearLayout>
<LinearLayout
        android:id="@+id/linear4"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
         >
         <ImageView 
             android:src="@drawable/ic_launcher"
           android:layout_width="fill_parent"
        android:layout_height="wrap_content"  
             />
</LinearLayout>
<LinearLayout
        android:id="@+id/linear5"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
         >
         <ImageView 
             android:src="@drawable/ic_launcher"
           android:layout_width="fill_parent"
        android:layout_height="wrap_content"  
             />
</LinearLayout>
<LinearLayout
        android:id="@+id/linear6"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
         >
         <ImageView 
             android:src="@drawable/ic_launcher"
           android:layout_width="fill_parent"
        android:layout_height="wrap_content"  
             />
</LinearLayout>
<LinearLayout
        android:id="@+id/linear7"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
         >
         <ImageView 
             android:src="@drawable/ic_launcher"
           android:layout_width="fill_parent"
        android:layout_height="wrap_content"  
             />
</LinearLayout>
<LinearLayout
        android:id="@+id/linear8"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
         >
         <ImageView 
             android:src="@drawable/ic_launcher"
           android:layout_width="fill_parent"
        android:layout_height="wrap_content"  
             />
</LinearLayout>
<LinearLayout
        android:id="@+id/linear9"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
         >
         <ImageView 
             android:src="@drawable/ic_launcher"
           android:layout_width="fill_parent"
        android:layout_height="wrap_content"  
             />
</LinearLayout>
<LinearLayout
        android:id="@+id/linear10"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
         >
         <ImageView 
             android:src="@drawable/ic_launcher"
           android:layout_width="fill_parent"
        android:layout_height="wrap_content"  
             />
</LinearLayout>
</LinearLayout>

//LayoutsTestActivity.java

public class LayoutsTestActivity extends Activity {
    ArrayList<LinearLayout>linList;
    LinearLayout lin1,lin2,lin3,lin4,lin5,lin6,lin7,lin8,lin9,lin10;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        linList=new ArrayList<LinearLayout>();
        lin1=(LinearLayout)findViewById(R.id.linear1);
        lin2=(LinearLayout)findViewById(R.id.linear2);
        lin3=(LinearLayout)findViewById(R.id.linear3);
        lin4=(LinearLayout)findViewById(R.id.linear4);
        lin5=(LinearLayout)findViewById(R.id.linear5);
        lin6=(LinearLayout)findViewById(R.id.linear6);
        lin7=(LinearLayout)findViewById(R.id.linear7);
        lin8=(LinearLayout)findViewById(R.id.linear8);
        lin9=(LinearLayout)findViewById(R.id.linear9);
        lin10=(LinearLayout)findViewById(R.id.linear10);
        linList.add(lin1);
        linList.add(lin2);
        linList.add(lin3);
        linList.add(lin4);
        linList.add(lin5);
        linList.add(lin6);
        linList.add(lin7);
        linList.add(lin8);
        linList.add(lin9);
        linList.add(lin10);
    }
}
//LayoutsTestActivity.java 公共类布局Stactivity扩展活动{ 数组列表; 线性布局lin1、lin2、lin3、lin4、lin5、lin6、lin7、lin8、lin9、lin10; /**在首次创建活动时调用*/ @凌驾 创建时的公共void(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.main); linList=newarraylist(); lin1=(LinearLayout)findViewById(R.id.linear1); lin2=(LinearLayout)findViewById(R.id.linear2); lin3=(LinearLayout)findViewById(R.id.linear3); lin4=(LinearLayout)findViewById(R.id.linear4); lin5=(LinearLayout)findViewById(R.id.linear5); lin6=(LinearLayout)findViewById(R.id.linear6); lin7=(LinearLayout)findViewById(R.id.linear7); lin8=(LinearLayout)findViewById(R.id.linear8); lin9=(LinearLayout)findViewById(R.id.linear9); lin10=(LinearLayout)findViewById(R.id.linear10); 添加(lin1); 添加(lin2); 添加(lin3); 添加(lin4); 添加(lin5); 添加(lin6); 添加(lin7); 添加(lin8); 添加(lin9); 添加(lin10); } }
您可以将布局ID存储在int数组中。示例
int[]i阵列

如果您想使用它们,只需调用
findviewbyd(idArray[index])
并记住将其强制转换为线性布局

或者
setContentView(idArray[index])