как добавить статический макет в другой статический макет во время выполнения - PullRequest
0 голосов
/ 18 апреля 2011

Я новый разработчик в Android. У меня проблема с макетами в Android.

Я использовал три макета в main.xml следующим образом:

main.xml

<LinearLayout android:layout_width="fill_parent" 
android:layout_height="60dip" 
android:gravity="center" android:background="@drawable/tabmessage" android:id="@+id/linearLayout01">

    <TextView android:id="@+id/textView1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textColor="#000000" android:text="layout1">
    </TextView>
</LinearLayout>

<LinearLayout android:layout_width="fill_parent" 
android:layout_height="200dip" android:background="#ff0000" android:id="@+id/linearLayout03">
 <LinearLayout android:layout_width="fill_parent" 
android:layout_height="60dip" 
android:gravity="center" android:background="@drawable/tabmessage" android:id="@+id/linearLayout02">

    <TextView android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textColor="#000000" android:text="layout2" android:id="@+id/textView2">
    </TextView>
</LinearLayout>
</LinearLayout>

я сделал класс следующим образом

MyClass.java

открытый класс MyShout extends Activity {/ ** Вызывается при первом создании действия.* /

 @Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    LinearLayout layout1=((LinearLayout)findViewById(R.id.linearLayout01));
    LinearLayout layout2=((LinearLayout)findViewById(R.id.linearLayout02));
    LinearLayout layout3=((LinearLayout)findViewById(R.id.linearLayout03));

  }        
}

здесь я хотел бы добавить layout1 в layout3.Как я могу добавить layout1 в layout3 во время выполнения?пожалуйста, помогите мне .....

Ответы [ 2 ]

2 голосов
/ 17 июля 2011

Вы можете сделать

layout3.addView(layout1); 
//or
ViewGroup.LayoutParams params = new //setup here positioning rules
layout3.addView(layout1, params);
0 голосов
/ 18 апреля 2011

Вы не можете делать так.

Вы можете сделать так:

<LinearLayout>
    <LinearLayout>
           <LinearLayout>
           </LinearLayout>
    </LinearLayout>
</LinearLayout>
...