1.先来看下应用场景
看到上图,我们在商品详情开发过程中经常是可以需要,价格画价,这种效果,如何简单的实现上面这个效果呢?
布局
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/tv"
android:layout_width="wrap_content"
android:layout_centerHorizontal="true"
android:paddingLeft="4dp"
android:paddingRight="4dp"
android:layout_height="wrap_content"
android:text="159" />
<View
android:layout_width="wrap_content"
android:layout_alignLeft="@id/tv"
android:layout_alignRight="@id/tv"
android:layout_height="0.5dp"
android:layout_centerInParent="true"
android:background="#bb000000"/>
</RelativeLayout>
</RelativeLayout>
我们用了三行代码实现,都是自带属性,是不是很简单啊
android:layout_alignLeft="@id/tv"
android:layout_alignRight="@id/tv"
android:layout_centerInParent="true"
android:layout_alignLeft=”@id/tv” –将控件的左边缘和给定ID控件的左边缘对齐
android:layout_alignRight=”@id/tv” –将控件的左边缘和给定ID控件的右边边缘对齐
看看效果:
相对布局实用属性:
Android:layout_above="@id/xxx" --将控件置于给定ID控件之上
android:layout_below="@id/xxx" --将控件置于给定ID控件之下
android:layout_toLeftOf="@id/xxx" --将控件的右边缘和给定ID控件的左边缘对齐
android:layout_toRightOf="@id/xxx" --将控件的左边缘和给定ID控件的右边缘对齐
android:layout_alignLeft="@id/xxx" --将控件的左边缘和给定ID控件的左边缘对齐
android:layout_alignTop="@id/xxx" --将控件的上边缘和给定ID控件的上边缘对齐
android:layout_alignRight="@id/xxx" --将控件的右边缘和给定ID控件的右边缘对齐
android:layout_alignBottom="@id/xxx" --将控件的底边缘和给定ID控件的底边缘对齐
android:layout_alignParentLeft="true" --将控件的左边缘和父控件的左边缘对齐
android:layout_alignParentTop="true" --将控件的上边缘和父控件的上边缘对齐
android:layout_alignParentRight="true" --将控件的右边缘和父控件的右边缘对齐
android:layout_alignParentBottom="true" --将控件的底边缘和父控件的底边缘对齐
android:layout_centerInParent="true" --将控件置于父控件的中心位置
android:layout_centerHorizontal="true" --将控件置于水平方向的中心位置
android:layout_centerVertical="true" --将控件置于垂直方向的中心位置