LinerLayout布局中android:layout_gravity = "right"失效的原因及解决方法

本文讲解了如何在Android中使用TextView组件实现文本右对齐及底部定位。通过设置android:layout_weight=1 android:gravity=right 和 android:layout_gravity=bottom 属性,可以精确控制文本在屏幕上的位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原因

 <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="1+1"
            android:layout_gravity="right"
            android:textColor="#000000"
            android:textSize="50sp" />

在设置完其layout_width ,layout_height属性的值为wrap_content之后, 布局管理器把这个线性布局(horizontal)平均分成了好几份.如下图
在这里插入图片描述
所以说此时"1+1"是在右侧的, 不过和预期的效果不一样

解决办法

将TextView组件中的代码改为如下:

 <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="1+1"
            android:layout_weight="1"
            android:gravity="right"
            android:layout_gravity="bottom"
            android:textColor="#000000"
            android:textSize="50sp" />

解释:

android:layout_weight = "1" 是用来设置TextView占据整个布局的宽度 
android:gravity="right"    设置文本内容"1+1"相对于父容器TextView的位置为right
android:layout_gravity="bottom"  设置TextView组件相对于父布局LinerLayout的位置为bottom

PS:
android:gravity是对元素本身说的
android:layout_gravity是相对与它的父元素说的,说明元素显示在父元素的什么位置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值