Android 实现两个控件分别靠左侧边缘和右侧边缘,且不重叠

本文介绍了在Android中如何让两个控件分别紧贴左侧和右侧边缘,同时确保它们不重叠。通过使用RelativeLayout和LinearLayout结合属性布局调整,详细展示了两种实现方式的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 使用relativeLayout 从右侧往左侧加,但是问题是,如果右侧的想要不显示,右侧的控件位置会显示空白,而不会自动显示左侧的剩余部分

<RelativeLayout
android:id="@+id/item_layout"
android:layout_width="fill_parent"

<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/icon_layout"
android:layout_alignParentRight="true"
android:layout_marginRight="5dp"
android:layout_centerVertical="true"
android:layout_gravity="center_vertical">
<TextView
android:id="@+id/status"
android:layout_width="wrap_content"
android:layout_height="30dp"
android:textSize="16sp"
android:gravity="center"
android:text="@string/invite_title"
android:textColor="@android:color/white"/>
</FrameLayout>

<TextView
android:id="@+id/contact_name"
android:layout_width="wrap_content"
android:layout_height="50dp"
android:layout_toRightOf="@id/contact_selected"
android:gravity="center_vertical"
android:layout_marginLeft="15dp"
android:textSize="21sp"
fontsparam:fontSize="Regular"
android:singleLine="true"
android:ellipsize="end" />
</RelativeLayout>

使用LinearLayout 使用layout_weight控制. 可能被压缩的文字,配置fill_parent 病配置 android:layout_weight="1"

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1" >
<ImageView
android:id="@+id/id1"
android:layout_width="25dp"
android:layout_height="25dp"
android:layout_centerVertical="true"
android:layout_marginLeft="15dp"
android:src="@drawable/btn_gren_uncheck"
tools:ignore="ContentDescription"
android:layout_alignParentLeft="true" />
</RelativeLayout>
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/icon_layout"
android:layout_marginRight="5dp"
android:gravity="center_vertical"
android:layout_gravity="center">
<TextView
android:id="@+id/status"
android:layout_width="wrap_content"
android:layout_height="30dp"
android:textSize="16sp"
android:gravity="center"
android:text="invite_title"
android:background="@drawable/b"
android:layout_gravity="right"/>
</FrameLayout>
</LinearLayout>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值