1. 程式人生 > >LinearLayout 獲取子元素,並分別給子元素賦值實現

LinearLayout 獲取子元素,並分別給子元素賦值實現

xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:a_zhon="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:orientation="vertical"
    android:layout_height="match_parent"
    >
       
       <!--寫了五個子類-->
       <LinearLayout
           android:background="#fbf0dc"
           android:id="@+id/ly_this_no"
           android:layout_marginTop="5dp"
           android:layout_marginStart="10dp"
           android:layout_marginEnd="10dp"
           android:orientation="horizontal"
           android:gravity="center"
           android:layout_width="match_parent"
           android:layout_height="wrap_content">
           <TextView
               android:textColor="@android:color/white"
               android:gravity="center"
               android:background="@drawable/shape_round_blue"
               android:textSize="16sp"
               android:layout_marginStart="5dp"
               android:layout_marginTop="10dp"
               android:layout_marginBottom="10dp"
               android:layout_width="@dimen/y17"
               android:layout_height="25dp" />
           <TextView
               android:textColor="@android:color/white"
               android:gravity="center"
               android:background="@drawable/shape_round_blue"
               android:textSize="16sp"
               android:layout_marginStart="@dimen/x10"
               android:layout_marginTop="10dp"
               android:layout_marginBottom="10dp"
               android:layout_width="@dimen/y17"
               android:layout_height="25dp" />
           <TextView
               android:textColor="@android:color/white"
               android:gravity="center"
               android:background="@drawable/shape_round_blue"
               android:textSize="16sp"
               android:layout_marginStart="@dimen/x10"
               android:layout_marginTop="10dp"
               android:layout_marginBottom="10dp"
               android:layout_width="@dimen/y17"
               android:layout_height="25dp" />
           <TextView
               android:textColor="@android:color/white"
               android:gravity="center"
               android:background="@drawable/shape_round_blue"
               android:textSize="16sp"
               android:layout_marginStart="@dimen/x10"
               android:layout_marginTop="10dp"
               android:layout_marginBottom="10dp"
               android:layout_width="@dimen/y17"
               android:layout_height="25dp" />
           <TextView
               android:textColor="@android:color/white"
               android:gravity="center"
               android:background="@drawable/shape_round_blue"
               android:textSize="16sp"
               android:layout_marginStart="@dimen/x10"
               android:layout_marginTop="10dp"
               android:layout_marginBottom="10dp"
               android:layout_width="@dimen/y17"
               android:layout_height="@dimen/y17" />
       </LinearLayout>
     

</LinearLayout>

Activity.java 中的實現

LinearLayout  thisNoLayout = findViewById(R.id.ly_this_no);
//因為父控制元件中寫的是五個TextView,所有這裡的getChildCount也是五個
String resultArray=new  String[]{"a","b","c","d","e"};
 for (int i = 0; i < thisNoLayout.getChildCount(); i++) {
                    TextView textView = (TextView) thisNoLayout.getChildAt(i);
                    String value = resultArray[i];
                    textView.setText(value);
                }

通過上訴方式,就可以完成對LinearLayout   裡面所有沒有標明id的TextView進行賦值了