Android开发之ConstraintLayout(约束布局)一个控件位于一个控件右上角类似RelativeLayout实现效果
生活随笔
收集整理的這篇文章主要介紹了
Android开发之ConstraintLayout(约束布局)一个控件位于一个控件右上角类似RelativeLayout实现效果
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
老套路看下效果圖:(絕對的原創!!!!)
實際上很簡單,四個點對應上就行了,看代碼:
<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout 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"><TextViewandroid:gravity="center"android:id="@+id/sign_in_button"android:layout_width="280dp"android:layout_height="75dp"android:layout_marginTop="50dp"android:layout_marginBottom="75dp"android:text="測試數據"android:textSize="22sp"android:textStyle="bold"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintLeft_toLeftOf="parent"app:layout_constraintRight_toRightOf="parent"app:layout_constraintTop_toTopOf="parent"app:layout_constraintVertical_bias="0.0" /><ProgressBarandroid:id="@+id/progressBar"style="?android:attr/progressBarStyle"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginTop="14dp"app:layout_constraintBottom_toTopOf="@+id/sign_in_button"app:layout_constraintEnd_toEndOf="@+id/sign_in_button"app:layout_constraintStart_toEndOf="@+id/sign_in_button"app:layout_constraintTop_toTopOf="@+id/sign_in_button" /> </androidx.constraintlayout.widget.ConstraintLayout>直接拿去用吧,自己開始也不知道怎么布局,然后自己隨意按照自己的思路將4個點連接就成功了。
?
?
升級版,研究了下左上右下四個角的擺放位置如下圖:
?
直接上代碼吧:
<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout 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"><TextViewandroid:id="@+id/sign_in_button"android:layout_width="280dp"android:layout_height="75dp"android:layout_marginTop="50dp"android:layout_marginBottom="75dp"android:gravity="center"android:text="測試數據"android:textSize="22sp"android:textStyle="bold"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintLeft_toLeftOf="parent"app:layout_constraintRight_toRightOf="parent"app:layout_constraintTop_toTopOf="parent"app:layout_constraintVertical_bias="0.0" /><ProgressBarandroid:id="@+id/progressBar"style="?android:attr/progressBarStyle"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginTop="14dp"app:layout_constraintBottom_toTopOf="@+id/sign_in_button"app:layout_constraintEnd_toEndOf="@+id/sign_in_button"app:layout_constraintStart_toEndOf="@+id/sign_in_button"app:layout_constraintTop_toTopOf="@+id/sign_in_button" /><TextViewandroid:id="@+id/textView2"android:layout_width="@dimen/dp_50"android:layout_height="@dimen/dp_50"android:background="@android:color/holo_blue_light"app:layout_constraintBottom_toTopOf="@+id/sign_in_button"app:layout_constraintEnd_toStartOf="@+id/sign_in_button"app:layout_constraintStart_toStartOf="@+id/sign_in_button"app:layout_constraintTop_toTopOf="@+id/sign_in_button" /><TextViewandroid:id="@+id/textView4"android:layout_width="@dimen/dp_50"android:layout_height="@dimen/dp_50"android:background="@android:color/holo_orange_dark"app:layout_constraintBottom_toBottomOf="@+id/sign_in_button"app:layout_constraintEnd_toStartOf="@+id/sign_in_button"app:layout_constraintStart_toStartOf="@+id/sign_in_button"app:layout_constraintTop_toBottomOf="@+id/sign_in_button" /><TextViewandroid:layout_width="@dimen/dp_50"android:layout_height="@dimen/dp_50"android:background="@android:color/holo_purple"app:layout_constraintBottom_toBottomOf="@+id/sign_in_button"app:layout_constraintEnd_toEndOf="@+id/sign_in_button"app:layout_constraintStart_toEndOf="@+id/sign_in_button"app:layout_constraintTop_toBottomOf="@+id/sign_in_button" /><TextViewandroid:id="@+id/textView"android:layout_width="300dp"android:layout_height="75dp"android:gravity="center"android:text="中央布局"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toTopOf="parent"app:layout_constraintVertical_bias="0.3" /><TextViewandroid:id="@+id/textView3"android:layout_width="@dimen/dp_50"android:layout_height="@dimen/dp_50"android:background="@android:color/holo_green_dark"app:layout_constraintBottom_toBottomOf="@+id/textView"app:layout_constraintEnd_toStartOf="@+id/textView"app:layout_constraintStart_toStartOf="@+id/textView"app:layout_constraintTop_toTopOf="@+id/textView" /><TextViewandroid:id="@+id/textView5"android:layout_width="@dimen/dp_50"android:layout_height="@dimen/dp_50"android:background="@android:color/holo_red_light"app:layout_constraintBottom_toBottomOf="@+id/textView"app:layout_constraintEnd_toEndOf="@+id/textView"app:layout_constraintStart_toEndOf="@+id/textView"app:layout_constraintTop_toTopOf="@+id/textView" /><TextViewandroid:id="@+id/textView6"android:layout_width="@dimen/dp_50"android:layout_height="@dimen/dp_50"android:background="@android:color/holo_green_dark"app:layout_constraintBottom_toTopOf="@+id/textView"app:layout_constraintEnd_toStartOf="@+id/textView"app:layout_constraintStart_toEndOf="@+id/textView"app:layout_constraintTop_toTopOf="@+id/textView" /><TextViewandroid:layout_width="@dimen/dp_50"android:layout_height="@dimen/dp_50"android:background="@android:color/holo_red_light"app:layout_constraintBottom_toBottomOf="@+id/textView"app:layout_constraintEnd_toEndOf="@+id/textView"app:layout_constraintStart_toStartOf="@+id/textView"app:layout_constraintTop_toBottomOf="@+id/textView" /> </androidx.constraintlayout.widget.ConstraintLayout>?
總結
以上是生活随笔為你收集整理的Android开发之ConstraintLayout(约束布局)一个控件位于一个控件右上角类似RelativeLayout实现效果的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 苹果xr摄像头下面一个小孔是什么
- 下一篇: 英雄联盟好听的id名字