Android布局:gravity与layout_gravity的区别

本文详细解释了Android开发中两个重要的布局属性:android:gravity和android:layout_gravity的区别及使用场景。android:gravity用于设置View内部元素的对齐方式,如按钮上的文字位置;而android:layout_gravity则用来指定View在其父容器内的对齐位置。
android:gravity 属性是对该view中内容的限定.比如一个button 上面的text. 你可以设置该text 相对于view的靠左,靠右等位置.

android:layout_gravity是用来设置该view相对与父view 的位置.比如一个button 在linearlayout里,你想把该button放在linearlayout里靠左、靠右等位置就可以通过该属性设置


即android:gravity用于设置View中内容相对于View组件的对齐方式,而android:layout_gravity用于设置View组件相对于Container的对齐方式。

<?xml version="1.0" encoding="utf-8"?> <layout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools"> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/ready_update" android:layout_width="1200dp" android:layout_height="wrap_content" android:layout_marginLeft="360dp" android:layout_marginTop="173dp" android:background="#FFFFFF"> <!-- 标题 --> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/title" android:layout_width="600dp" android:layout_height="56dp" android:layout_marginLeft="300dp" android:layout_marginTop="40dp" android:background="#FFFFFF" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent"> <TextView android:id="@+id/title_information" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:text="@string/map_data_update" android:textColor="#000000" android:textSize="36sp" android:textStyle="bold" app:layout_constraintStart_toStartOf="@+id/title" app:layout_constraintTop_toTopOf="@+id/title" /> </androidx.constraintlayout.widget.ConstraintLayout> <!-- 更新目的及内容 --> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/PurposeAndContent" android:layout_width="900dp" android:layout_height="wrap_content" android:layout_marginLeft="80dp" android:layout_marginTop="100.97dp" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent"> <TextView android:id="@+id/PurposeAndContent_info" android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="16dp" android:text="@string/update_purpose" android:textColor="#000000" android:textSize="24sp" app:layout_constraintStart_toStartOf="@+id/PurposeAndContent" app:layout_constraintTop_toTopOf="@+id/PurposeAndContent" /> </androidx.constraintlayout.widget.ConstraintLayout> <!-- 版本信息区域 - 使用正确的数据绑定语法 --> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/VersionAndTime" android:layout_width="498dp" android:layout_height="wrap_content" android:layout_marginLeft="80dp" android:layout_marginTop="190.97dp" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent"> <TextView android:id="@+id/versionandtime_info" android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="16dp" android:textColor="#000000" android:textSize="24sp" app:layout_constraintStart_toStartOf="@+id/VersionAndTime" app:layout_constraintTop_toTopOf="@+id/VersionAndTime" tools:text="@string/current_version" /> </androidx.constraintlayout.widget.ConstraintLayout> <!-- 状态提示 --> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/statusPrompt" android:layout_width="340dp" android:layout_height="wrap_content" android:layout_marginLeft="80dp" android:layout_marginTop="320.97dp" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent"> <TextView android:id="@+id/statusPromptText" android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="16dp" android:text="@string/please_ensure_that_the_vehicle_is_in_the_following_condition" android:textColor="#000000" android:textSize="24sp" app:layout_constraintStart_toStartOf="@+id/statusPrompt" app:layout_constraintTop_toTopOf="@+id/statusPrompt" /> </androidx.constraintlayout.widget.ConstraintLayout> <!-- 环境提示 --> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/Environmental" android:layout_width="500dp" android:layout_height="wrap_content" android:layout_marginLeft="140dp" android:layout_marginTop="369dp" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent"> <TextView android:id="@+id/EnvironmentalText" android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="16dp" android:text="@string/vehicle_status" android:textColor="#000000" android:textSize="24sp" app:layout_constraintStart_toStartOf="@+id/Environmental" app:layout_constraintTop_toTopOf="@+id/Environmental" /> </androidx.constraintlayout.widget.ConstraintLayout> <!--立即更新--> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/updateNow" android:layout_width="280dp" android:layout_height="64dp" android:layout_marginLeft="300dp" android:layout_marginTop="550dp" android:background="#B87333" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent"> <!--立即更新文言--> <TextView android:id="@+id/updateNowtext" android:layout_width="280dp" android:layout_height="64dp" android:layout_marginLeft="0dp" android:layout_marginTop="0dp" android:background="#B87333" android:ellipsize="end" android:gravity="center_horizontal|center_vertical" android:hint="@string/search_for_destination" android:maxLength="50" android:singleLine="false" android:text="@string/immediate_Updating" android:textColor="#FFFFFF" android:textSize="28sp" app:layout_constraintStart_toStartOf="@+id/updateNow" app:layout_constraintTop_toTopOf="@+id/updateNow" /> </androidx.constraintlayout.widget.ConstraintLayout> <!--取消--> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/quxiao" android:layout_width="280dp" android:layout_height="64dp" android:layout_marginLeft="620dp" android:layout_marginTop="550dp" android:background="#FFFF00" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent"> <!--有数据可提示文言--> <TextView android:id="@+id/quxiaotext" android:layout_width="280dp" android:layout_height="64dp" android:layout_marginLeft="0dp" android:layout_marginTop="0dp" android:background="#818181" android:ellipsize="end" android:gravity="center_horizontal|center_vertical" android:hint="@string/search_for_destination" android:maxLength="50" android:singleLine="false" android:text="@string/update_cancel_text" android:textColor="#FFFFFF" android:textSize="28sp" app:layout_constraintStart_toStartOf="@+id/quxiao" app:layout_constraintTop_toTopOf="@+id/quxiao" /> </androidx.constraintlayout.widget.ConstraintLayout> <!--进度文言--> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/updateing" android:layout_width="1040dp" android:layout_height="35dp" android:layout_marginLeft="80dp" android:layout_marginTop="397dp" android:background="#FFFFFF" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent"> <!--更新中文言--> <TextView android:id="@+id/updateingtext" android:layout_width="1040dp" android:layout_height="35dp" android:layout_marginLeft="0dp" android:layout_marginTop="0dp" android:background="#FFFFFF" android:ellipsize="end" android:gravity="center_horizontal|center_vertical" android:hint="@string/search_for_destination" android:maxLength="50" android:singleLine="false" android:text="@string/updating_please_wait_a_moment" android:textColor="#000000" android:textSize="24sp" app:layout_constraintStart_toStartOf="@+id/updateing" app:layout_constraintTop_toTopOf="@+id/updateing" /> </androidx.constraintlayout.widget.ConstraintLayout> <!--进度条容器--> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/updateProgress" android:layout_width="721.78dp" android:layout_height="6dp" android:layout_marginLeft="235dp" android:layout_marginTop="368dp" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent"> <!-- 进度条 --> <ProgressBar android:id="@+id/progressBar" style="?android:attr/progressBarStyleHorizontal" android:layout_width="match_parent" android:layout_height="6dp" android:max="100" android:progress="0" android:progressBackgroundTint="#E0E0E0" android:progressTint="#B87333" app:layout_constraintStart_toStartOf="@+id/updateProgress" app:layout_constraintTop_toTopOf="@+id/updateProgress" /> </androidx.constraintlayout.widget.ConstraintLayout> <!--进度条容器--> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/updateProgressTextLayout" android:layout_width="1040dp" android:layout_height="87dp" android:layout_marginLeft="80dp" android:layout_marginTop="224.97dp" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent"> <!-- 进度文本 --> <TextView android:id="@+id/progressText" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:paddingTop="8dp" android:text="0%" android:textColor="#000000" android:textSize="60sp" app:layout_constraintStart_toStartOf="@+id/updateProgressTextLayout" app:layout_constraintTop_toTopOf="@+id/updateProgressTextLayout" /> </androidx.constraintlayout.widget.ConstraintLayout> <!--暂停--> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/suspend" android:layout_width="280dp" android:layout_height="64dp" android:layout_marginLeft="300dp" android:layout_marginTop="550dp" android:background="#B87333" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent"> <!--暂停文言--> <TextView android:id="@+id/suspendtext" android:layout_width="280dp" android:layout_height="64dp" android:layout_marginLeft="0dp" android:layout_marginTop="0dp" android:background="#B87333" android:ellipsize="end" android:gravity="center_horizontal|center_vertical" android:hint="@string/search_for_destination" android:maxLength="50" android:singleLine="false" android:text="@string/pause" android:textColor="#FFFFFF" android:textSize="28sp" app:layout_constraintStart_toStartOf="@+id/suspend" app:layout_constraintTop_toTopOf="@+id/suspend" /> </androidx.constraintlayout.widget.ConstraintLayout> <!--恢复更新--> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/resume" android:layout_width="280dp" android:layout_height="64dp" android:layout_marginLeft="300dp" android:layout_marginTop="550dp" android:background="#B87333" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent"> <!--暂停文言--> <TextView android:id="@+id/resumetext" android:layout_width="280dp" android:layout_height="64dp" android:layout_marginLeft="0dp" android:layout_marginTop="0dp" android:background="#B87333" android:ellipsize="end" android:gravity="center_horizontal|center_vertical" android:hint="@string/search_for_destination" android:maxLength="50" android:singleLine="false" android:text="@string/immediate_Updating" android:textColor="#FFFFFF" android:textSize="28sp" app:layout_constraintStart_toStartOf="@+id/resume" app:layout_constraintTop_toTopOf="@+id/resume" /> </androidx.constraintlayout.widget.ConstraintLayout> <!-- 版本信息容器 --> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/VersionInfoContainer" android:layout_width="500dp" android:layout_height="100dp" android:layout_marginLeft="350dp" android:layout_marginTop="180dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent"> <!-- 目标版本 --> <TextView android:id="@+id/target_version_text" android:layout_width="0dp" android:layout_height="50dp" android:gravity="center" android:textSize="24sp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toTopOf="parent" tools:text="待传入"/> <!-- 当前版本 --> <TextView android:id="@+id/current_version_text" android:layout_width="0dp" android:layout_height="50dp" android:gravity="center" android:textSize="24sp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toBottomOf="@id/target_version_text" tools:text="待传入"/> </androidx.constraintlayout.widget.ConstraintLayout> <!-- 结束界面(调整位置避免重叠) --> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/updateEnd" android:layout_width="1040dp" android:layout_height="wrap_content" android:layout_marginStart="80dp" android:layout_marginTop="24dp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/VersionInfoContainer"> <!-- 提示文字 --> <TextView android:id="@+id/updateEndText" android:layout_width="700dp" android:layout_height="50dp" android:layout_marginLeft="250dp" android:layout_marginTop="450dp" android:gravity="center" android:textSize="28sp" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" tools:text="@string/data_update_completed"/> </androidx.constraintlayout.widget.ConstraintLayout> <!--IKONW--> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/close" android:layout_width="280dp" android:layout_height="64dp" android:layout_marginLeft="460dp" android:layout_marginTop="550dp" android:background="#FFFF00" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintTop_toTopOf="parent"> <!--有数据可提示文言--> <TextView android:id="@+id/closetext" android:layout_width="280dp" android:layout_height="64dp" android:layout_marginLeft="0dp" android:layout_marginTop="0dp" android:background="#818181" android:ellipsize="end" android:gravity="center_horizontal|center_vertical" android:hint="@string/search_for_destination" android:maxLength="50" android:singleLine="false" android:text="@string/update_konwed_text" android:textColor="#FFFFFF" android:textSize="28sp" app:layout_constraintStart_toStartOf="@+id/close" app:layout_constraintTop_toTopOf="@+id/close" /> </androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout> </layout> 目前提示文字显示位置有问题,目前主容器多长多宽?提示文字应该在“我知道了”和预留的打钩图案中间
最新发布
09-06
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值