如何在Relativelayout中设置动态线性布局

时间:2011-07-21 16:29:32

标签: android android-layout

如何在verticallayout中动态设置垂直方向的两个linearlayout。以及如何在两个linearlayout中添加控件。

2 个答案:

答案 0 :(得分:1)

        <RelativeLayout 
         xmlns:android="http://schemas.android.com/apk/res/android"
         android:orientation="horizontal" 
         android:id="@+id/yourlayout"
         android:layout_width="fill_parent"
         android:layout_height="fill_parent"

         >
            <LinearLayout android:id="@+id/linearLayout1" 
    android:orientation="vertical" 
    android:layout_alignParentLeft="true" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" >

            <Button android:id="@+id/button1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
android:text="Button 1"
    ></Button>

            </LinearLayout>  



            <LinearLayout android:id="@+id/linearLayout2" 
    android:orientation="vertical" 
    android:layout_width="fill_parent"  
    android:layout_alignParentRight="true" 
    android:layout_height="fill_parent" >

                <Button android:id="@+id/button2" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
android:text="Button 2"
    ></Button>
            </LinearLayout>

         </RelativeLayout>

您可以根据需要扩展此布局和所需参数。

 LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View v = inflater.inflate(R.layout.whereyouwant, null);
    RelativeLayout rl = (RelativeLayout)findViewById(R.id.yourlayout);
    RelativeLayout.LayoutParams parametri = new  RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT);
    parametri.addRule(RelativeLayout.ALIGN_PARENT_TOP);
    rl.addView(v, parametri);
    v.setVisibility(View.VISIBLE);

答案 1 :(得分:0)

hi对于RelativeView,没有什么叫做垂直方向。 RelativeLayout中的Widget位于彼此的相对位置。因此,如果你想让一个linearlayout低于另一个...你需要为前一个布局使用android:layout_below属性。