您的位置:首页 > 移动开发 > Android开发

Android应用的LinearLayout中嵌套RelativeLayout的布局用法

2016-04-13 15:46 701 查看

想将Button和ListView分别放在屏幕的一左一右。
单纯使用android:gravity和android:layout_gravity不成功。
于是涉及到RelativeLayout。
关键为:android:layout_alignParentRight="true",
android:layout_alignParentLeft="true":

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:gravity="center_vertical">
<TextView
android:id="@+id/mTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello" />
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:gravity="right"
android:padding="10dp">
<TextView
android:id="@+id/mTextView01"
android:layout_alignParentLeft="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="范例一" />
<Button
android:id="@+id/mButton01"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="发送" />
</RelativeLayout>
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:gravity="right"
android:padding="10dp">
<TextView
android:id="@+id/mTextView02"
android:layout_alignParentLeft="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="范例二" />
<Button
android:id="@+id/mButton01"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="发送" />
</RelativeLayout>
</LinearLayout>

效果为:

PS:另附我的项目布局的一点经验

<?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:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginLeft="50px"
android:layout_marginRight="50px"
android:layout_marginBottom="15px"
android:layout_gravity="center"
android:gravity="center">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="性别"
android:textSize="18sp"
android:layout_weight="3"/>
<RadioGroup android:id="@+id/radioGroup"
android:contentDescription="性别"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="1">
<RadioButton android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radioMale"
android:text="男"
android:checked="true"
android:layout_marginRight="15px"
android:textSize="18sp">
</RadioButton>
<RadioButton android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radioFemale"
android:text="女"
android:textSize="18sp">
</RadioButton>
</RadioGroup>
</LinearLayout>
</LinearLayout>

 开始时RadioGroup的layout_width="wrap_content",怎么设置权都达不到想要的效果。要改成fill_parent
RadioButton的尺寸比TextView大  所以显示时TextView在上方,设置LinearLayout中android:gravity="center">即可。

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  LinearLayout Android