一开始在xml中用gravity和Layout gravity的时候,没有去注意有什么区别,导致在调整界面的时候误用了,总是没法使文字按照要求的位置来显示。
其实从英文字面上也不难理解,Layout gravity我的理解是当前组件对父组件的位置,而gravity是当前组件的内容对当前组件的位置。
下面是设计两行组件左对齐,并且组合在一起居中显示的情况
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center">
<LinearLayout
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<LinearLayout
android:id="@+id/sim_1"
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical">
<ImageView
android:id="@+id/sim_icon_1"
android:focusable="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:src="@drawable/zzz_ic_sim1" />
<TextView
android:id="@+id/carrier"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
android:layout_toRightOf="@+id/sim_icon_1"
android:layout_alignTop="@+id/sim_icon_1"
android:text="sim ka"/>
</LinearLayout>
<LinearLayout
android:id="@+id/sim_2"
android:layout_below="@id/sim_1"
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical">
<ImageView
android:id="@+id/sim_icon_2"
android:focusable="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:src="@drawable/zzz_ic_sim2" />
<TextView
android:id="@+id/carrier2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
android:layout_toRightOf="@+id/sim_icon_2"
android:layout_alignTop="@+id/sim_icon_2"
android:text="sim ka ghrthrtbv"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
分享到:
相关推荐
"Android中gravity与layout_gravity的区别" Android 中的 gravity 和 layout_gravity 是两个常见的属性,它们都是用于设置视图组件的对齐方式,但是它们的作用域和应用场景却有所不同。 首先,让我们来看一下 ...
在Android开发中,`layout_gravity`和`gravity`是两个关键属性,它们都与控件的对齐和定位有关,但应用场景和作用对象不同。本文将深入探讨这两个属性的区别,以及它们在实际开发中的应用。 首先,我们来了解`...
android:layout_gravity:设置控件本身相对于父控件的显示位置。 看下如下代码段 代码如下:<?xml version=”1.0″ encoding=”utf-8″?><!– android:gravity设置了按钮上面的文字的显示位置,而android:...
gravity与 layout_gravity。 1. gravity与layout_gravity 给出定义: gravity:控制组件所包含的子元素的对齐方式,可多个组合。如(left | button) layout_gravity:控制该组件在父元素里的对齐方式。 开始使用...
在Android开发中,理解并熟练运用`gravity`、`layout_gravity`、`padding`和`margin`是非常关键的,它们决定了视图(View)在布局(Layout)中的位置和内部元素的间隔。下面将详细阐述这四个概念的区别和用法。 ...
1.首先来看看Android:layout_gravity和android:gravity的使用区别。 android:gravity: 这个是针对控件里的元素来说的,用来控制元素在该控件里的显示位置。例如,在一个Button按钮控件中设置如下两个属性, android...
在Android开发中,`android:layout_gravity`属性是一个至关重要的元素,用于控制视图(View)或布局(Layout)在容器中的对齐方式。它决定了一个组件在父布局中的位置,可以设置在水平方向、垂直方向或者同时设置...
`clip_vertical` 和 `clip_horizontal` 是另外两个与 `android:gravity` 相关的概念。它们控制当元素超过其容器大小时的行为: 1. `clip_vertical`: 如果元素的高度超过容器,启用此选项会裁剪超出部分,使其适应...
此外,`gravity`属性与`layout_gravity`有所不同,`gravity`是父视图的属性,影响其所有子视图的对齐方式,而`layout_gravity`是子视图的属性,只影响自身在父视图中的位置。 在压缩包文件`android-linear-layout-...
- 用途:与`android:gravity`不同,这个属性用于指定控件在父容器中的对齐方式。 - 示例:`android:layout_gravity="center"` - **android:textSize** - 用途:设置控件中文本的字体大小。 - 示例:`android:...
android:layout_gravity="bottom|right"/> ``` 4. **网格布局(GridLayout)** 网格布局将子视图排列成网格,每个子视图占据相等的行和列空间。通过设置`android:rowCount`和`android:columnCount`定义网格的...
android:layout_gravity="center" android:text="Button" /> ``` 在这个例子中,图片会占据整个屏幕,而按钮则居中显示在其上。 4. **GridLayout**:网格布局将视图分到指定行和列的格子里。例如: ```xml ...
在Android移动开发中,Layout是构建用户界面的核心组件。它是一种布局管理器,负责组织和定位应用程序中的视图(Views)和视图组(ViewGroups)。`LinearLayout`是Android中最基础且常用的布局之一,它允许将子视图...
- **`android:layout_marginBottom`**、**`android:layout_marginLeft`**、**`android:layout_marginRight`** 和 **`android:layout_marginTop`**:这些属性接受一个像素值(例如 30dp),可以设置视图与其父容器或...
- **android:layout_gravity**:指定视图在父容器中的位置。例如: - `"left"`:视图靠左边显示。 - `"right"`:视图靠右边显示。 - `"top"`:视图靠顶部显示。 - `"bottom"`:视图靠底部显示。 - `"center_...
5. `android:layout_alignBottom`, `android:layout_alignLeft`, `android:layout_alignRight`, `android:layout_alignTop` - 分别使控件的底、左、右、顶边缘与另一个ID控件的相应边缘对齐。 6. `android:layout_...
通常用于显示单个视图,例如对话框中的内容,但也可以通过设置`android:layout_gravity`属性来调整子视图在容器内的位置。 4. **表格布局(TableLayout)** 表格布局模仿HTML中的表格,由行(TableRow)和列组成。...