как установить динамическое линейное расположение в Relativelavout - PullRequest
0 голосов
/ 21 июля 2011

Как динамически установить два линейных макета в относительном макете с вертикальной ориентацией. И как добавить элементы управления в двух линейных макетах.

Ответы [ 2 ]

1 голос
/ 21 июля 2011
        <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);
0 голосов
/ 21 июля 2011

привет Нет ничего, что называется вертикальной ориентацией для RelativeView.Виджет внутри RelativeLayout размещается в относительных позициях друг к другу.Поэтому, если вы хотите, чтобы одно линейное расположение оказалось ниже другого ... вам необходимо использовать атрибут android: layout_below для прежнего макета.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...