美文网首页
Android RelativeLayout实现LinearLa

Android RelativeLayout实现LinearLa

作者: 大川的川 | 来源:发表于2019-02-14 10:34 被阅读0次
    • 实现效果 如图 权重效果.png
    RelativeLayout是相对布局控件:以控件之间相对位置或相对父容器位置进行排列,使用RelativeLayout目的很清晰,减少不必要的多层嵌套,那么如何实现LinearLayout中的等比例布局呢?RelativeLayout中也没有layout_weight权重的设置,如何是好,带着疑问,我们来看看。
    • 思路

    既然RelativeLayout是以控件之间相对位置或相对父容器位置进行排列,那么我们是不是可以在我们想要等比例布局的地方首先设置一个参考控件,然后根据这个参考控件左右等比例布局,或者上下等比例布局呢?没错android:layout_centerHorizontal="true"android:layout_centerVertical="true"这两个属性可以帮我们设定一个参考居中控件。

    • 实现 XML中的布局 lineCenter控件就是我们上面提到的布局参考控件
    <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/white">
            <View
                android:id="@+id/lineCenter"
                android:layout_width="0dp"
                android:layout_height="0dp"
                android:layout_centerHorizontal="true" />
            <!--标签部分-->
            <TextView
                android:id="@+id/result1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingLeft="@dimen/activity_20dp"
                android:paddingBottom="@dimen/activity_5dp"
                android:text="@string/mp_projectSignInPerson"
                android:layout_alignParentLeft="true"
                style="@style/TextViewStyle_4A4A4A_14sp"
                android:layout_below="@id/tag1"/>
            <TextView
                android:id="@+id/result2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingBottom="@dimen/activity_5dp"
                android:layout_alignLeft="@+id/lineCenter"
                android:text="@string/mp_projectSignInState"
                style="@style/TextViewStyle_4A4A4A_14sp"
                android:layout_below="@id/tag1"/>
            <TextView
                android:id="@+id/result3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingLeft="@dimen/activity_20dp"
                android:paddingBottom="@dimen/activity_5dp"
                android:text="@string/mp_pointGiveState"
                android:layout_alignParentLeft="true"
                style="@style/TextViewStyle_4A4A4A_14sp"
                android:layout_below="@id/result1"/>
            <TextView
                android:id="@+id/result4"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingBottom="@dimen/activity_5dp"
                android:layout_alignLeft="@+id/lineCenter"
                android:text="@string/mp_pointObtain"
                style="@style/TextViewStyle_4A4A4A_14sp"
                android:layout_below="@id/result2"/>
            <!--内容部分-->
            <TextView
                android:id="@+id/txt_signInNum"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingBottom="@dimen/activity_5dp"
                android:text="60"
                style="@style/TextViewStyle_4A4A4A_14sp"
                android:layout_below="@id/tag1"
                android:layout_toRightOf="@id/result1"/>
            <TextView
                android:id="@+id/txt_signInState"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingBottom="@dimen/activity_5dp"
                android:text="未签到"
                style="@style/TextViewStyle_4A4A4A_14sp"
                android:layout_below="@id/tag1"
                android:layout_toRightOf="@id/result2"/>
            <TextView
                android:id="@+id/txt_pointGiveState"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingBottom="@dimen/activity_5dp"
                android:text="未发放"
                style="@style/TextViewStyle_4A4A4A_14sp"
                android:layout_below="@id/result1"
                android:layout_toRightOf="@id/result3"/>
            <TextView
                android:id="@+id/txt_pointObtain"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingBottom="@dimen/activity_5dp"
                android:text="0"
                style="@style/TextViewStyle_4A4A4A_14sp"
                android:layout_below="@id/result2"
                android:layout_toRightOf="@id/result4"/>
        </RelativeLayout>
    

    相关文章

      网友评论

          本文标题:Android RelativeLayout实现LinearLa

          本文链接:https://www.haomeiwen.com/subject/lzmseqtx.html