LinearLayout布局及控件文字对齐方式

简介: android:gravity用于设置View组件中(字体)的对齐方式 android:layout_gravity用于设置Container组件的对齐方式 eg:通过设置android:gravity="center"来让EditText中的文字在EditText组件中居中显示 时我们设置EditText的android:layout_gravity="center_horizontal|center_vertical"来让EditText组件在LinearLayout中居中显示。

android:gravity用于设置View组件中(字体)的对齐方式

android:layout_gravity用于设置Container组件的对齐方式


eg:通过设置android:gravity="center"来让EditText中的文字在EditText组件中居中显示 时我们设置EditText的android:layout_gravity="center_horizontal|center_vertical"来让EditText组件在LinearLayout中居中显示。

 

image

上图中,如何实现A B控制分别在C中占一半,并且字体都居中显示?

 

一、EditText控制,主要是设置其TextView下面的Gravity才能使字体居中等效果生效!!!

image


  1. LinearLayout
  2.      android:id="@+id/mainLayout"
  3.      android:layout_width="fill_parent"
  4.      android:layout_height="wrap_content"
  5.      android:layout_marginBottom="51dp"
  6.      android:orientation="horizontal" >
  7.      TextView
  8.          android:id="@+id/textView2"
  9.          android:layout_width="0dp"
  10.          android:layout_height="fill_parent"
  11.          android:layout_weight="1"
  12.          android:gravity="center_vertical|center_horizontal"
  13.          android:text="TextView" />
  14.      EditText
  15.          android:id="@+id/editText1"
  16.          android:layout_width="0dp"
  17.          android:layout_height="fill_parent"
  18.          android:layout_weight="1"
  19.          android:ems="10"
  20.          android:gravity="center_horizontal|center_vertical"
  21.          android:inputType="number"
  22.          android:text="555" />
  23. /LinearLayout>


二、设置LinearLayout内的控件长度比例相同

将两个控件的weight分别设置为:

android:layout_weight="1"。

image

三、LinearLayout的几个属性

Orientation方向:即指定LinearLayout是代表一行还是一列,可以为horizontal或vertical,如android:orientation="vertical",当然也在可以在代码里通过setOrientation()方法来设置。

FillMode填充方式:所有在LinearLayout的控件都必须指定它的填充方式,即设置android:layout_width和android:layout_height,可以为三种值
    (1)具体的像素值,如20px
    (2)wrap_content,表示按控件文本实际长度显示
    (3)fill_parent,表示填充剩下的所有可用空间。

Weight权重:如果你想让一行或一列的控件按比例显示,这时候权重就起到作用了,如想让一行里面两控件其中一控件占两倍于另一控件的空间,可以把其中一控件的android:layout_weight设置为1,另一个为2即可


参考文献:

http://blog.163.com/fanning_7213/blog/static/2496505201071032214239/

http://android.tgbus.com/Android/tutorial/201104/348551.shtml

相关文章
|
3月前
|
移动开发 Java 编译器
Kotlin与Jetpack Compose:Android开发生态的演进与架构思考
本文从资深Android工程师视角深入分析Kotlin与Jetpack Compose在Android系统中的技术定位。Kotlin通过空安全、协程等特性解决了Java在移动开发中的痛点,成为Android官方首选语言。Jetpack Compose则引入声明式UI范式,通过重组机制实现高效UI更新。两者结合不仅提升开发效率,更为跨平台战略和现代架构模式提供技术基础,代表了Android开发生态的根本性演进。
115 0
|
机器学习/深度学习 机器人 Serverless
FaaS 的应用场景
FaaS 的应用场景
|
资源调度 JavaScript 前端开发
Vue3+TypeScript前端项目新纪元:揭秘高效事件总线Mitt,轻松驾驭组件间通信的艺术!
【8月更文挑战第3天】Vue3结合TypeScript强化了类型安全与组件化开发。面对大型应用中复杂的组件通信挑战,可通过引入轻量级事件发射器Mitt实现事件总线模式。Mitt易于集成,通过简单几步即可完成安装与配置:安装Mitt、创建事件总线实例、并在组件中使用`emit`与`on`方法发送及监听事件。此外,利用TypeScript的强大类型系统确保事件处理器正确无误。这种方式有助于保持代码整洁、解耦组件,同时提高应用的可维护性和扩展性。不过,在大规模项目中需谨慎使用,以防事件流过于复杂难以管理。
364 1
|
SQL 存储 算法
clickhouse SQL优化
clickhouse 是 OLAP 数据库,但其具有独特的索引设计,所以如果拿 MySQL 或者其他 RDB 的优化经验来优化 clickhouse 可能得不到很好的效果,所以特此单独整理一篇文档,用于有 SQL 优化需求的同学,本人接触 clickhouse 时间也不长,难免有不足的地方,如果大家发现错误,还请不吝指正。
83842 3
|
编解码 供应链 搜索推荐
VR技术在教育领域的应用前景:开启沉浸式学习新时代
【8月更文挑战第24天】VR技术在教育领域的应用前景广阔,它将为传统教育带来革命性的变革。通过提供沉浸式的学习体验和个性化的学习方式,VR技术能够激发学生的学习兴趣和动力,提高学习效果和综合素质。我们有理由相信,在未来的日子里,VR技术将成为教育领域的重要工具之一,为学生们带来更加丰富多彩的学习体验。让我们共同期待VR技术在教育领域的美好未来吧!
|
缓存 负载均衡 数据库
优化后端性能:提升Web应用响应速度的关键策略
在当今数字化时代,Web应用的性能对于用户体验至关重要。本文探讨了如何通过优化后端架构和技术手段,提升Web应用的响应速度。从数据库优化、缓存机制到异步处理等多个方面进行了深入分析,并提出了一系列实用的优化策略,以帮助开发者更好地应对日益增长的用户访问量和复杂的业务需求。
760 28
|
机器学习/深度学习 自然语言处理 算法框架/工具
[Longformer]论文实现:Longformer: The Long-Document Transformer
[Longformer]论文实现:Longformer: The Long-Document Transformer
394 1
|
XML Android开发 数据格式
Android XML 布局基础(三)LayoutParams 布局参数
Android XML 布局基础(三)LayoutParams 布局参数
391 0
iOS开发:Xcode自带的模拟器常用快捷键的使用
在iOS开发过程中,为了方便起见在测试程序的效果的时候,开发者会使用Xcode自带模拟器进行操作,而且Xcode自带的手机模拟器包含了苹果的所有最新的手机型号尺寸,这样也方便了开发者测试不同机型,但是在电脑Xcode上面的模拟器操作和真机操作还是有很大的不便,如果不知道常用的快捷键,操作起来也不方便,那么本篇博文就来分享一下Xcode自带模拟器的快捷键操作集合,分享给有需要的人。
882 0
iOS开发:Xcode自带的模拟器常用快捷键的使用