百分比佈局PercentRelativeLayout
阿新 • • 發佈:2019-02-06
1.新增依賴
compile 'com.android.support:percent:25.3.1'2.直接上程式碼
<?xml version="1.0" encoding="utf-8"?>
<android.support.percent.PercentRelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/top_left"
android:layout_width="0dp"
android:layout_height="0dp"
android:background="#1131d3"
android:text="藍色"
android:textColor="#fff"
android:gravity="center"
app:layout_heightPercent="30%"
app:layout_widthPercent="70%"
/>
<TextView
android:id="@+id/top_right"
android:layout_height="0dp"
android:layout_width="0dp"
android:layout_toRightOf="@+id/top_left"
android:background="#a72525"
android:text="紅色"
android:textColor="#fff"
android:gravity="center"
app:layout_heightPercent="30%"
app:layout_widthPercent="30%"
/>
<TextView
android:id="@+id/bottom"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_below="@+id/top_left"
android:background="#3ed116"
android:text="綠色"
android:textColor="#fff"
android:gravity="center"
app:layout_widthPercent="50%"
app:layout_heightPercent="70%"
/>
<!--
引入: xmlns:app="http://schemas.android.com/apk/res-auto"
儘管在layout_width中設定了match_parent,但是還是以app中widthpercent=50%為主要的
除非沒有widthpercent屬性,才會以layout_width為主
-->
<!--
android:layout_width和height可以不寫
-->
<TextView
android:id="@+id/right_botton"
android:layout_width="100dp"
android:layout_height="0dp"
android:layout_below="@+id/top_right"
android:layout_toRightOf="@+id/bottom"
android:background="#e1895e"
app:layout_aspectRatio="50%"
/>
<!--
app:layout_aspectRatio="50%" 用來指定寬:高的比例,如上面寬等於100dp,所以求出高等於200dp
-->
<!--
但是上述屬性不能和下面的一起使用,會失效。下面兩條屬性占主導地位:
app:layout_widthPercent="50%"
app:layout_heightPercent="50%"
-->
</android.support.percent.PercentRelativeLayout>