Android UI 开发·界面布局开发·案例分析

本文详细介绍了Android UI开发中的几种布局方式,包括LinearLayout的垂直和水平布局,RelativeLaout的相对位置设定,TableLayout的行列管理,FrameLayout的逐屏显示,GridLayout的矩形网格布局,以及AbsoluteLayout的坐标定位。同时,文章还补充了关于selector状态选择器的使用,用于在不同状态下改变字体和背景。
摘要由CSDN通过智能技术生成

目录

​编辑

1.  线性布局(LinearLayout)

2.  相对布局(RelativeLayout)

3.  表格布局(TableLayout)

4.  帧布局(FrameLayout)

5.  网格布局(GridLayout)

6.  绝对布局(AbsoluteLayout)

补充内容:关于selector状态选择器


1.  线性布局(LinearLayout)

        LinearLayout线性布局是一种最简单的布局方式,它有垂直和水平两种布局方向,使用“android:orientation="vertical"”属性设置可以指定布局方式为垂直,使用“android:orientation= "horizontal"”属性设置可以指定布局方式为水平。

        下面我们将通过一个案例了解LinearLayout这种布局方式。

<?xml version="1.0" encoding="utf-8"?>
<!-- 最外面的布局文件为线性布局,控件纵向摆放 -->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
	<!-- 第一个内嵌布局为相对布局 -->
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="2"
        android:background="@android:color/white" >
    </RelativeLayout>

<!-- 第二个内嵌布局为相对布局 -->
    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:background="@android:color/black" >
    </RelativeLayout>
</LinearLayout>

LinearLayout有两个非常相似的属性: android:gravity和android:layout_ gravity。

        它们都是用来设置对齐方式的,可选值包括left(左对齐)、right(右对齐)、top(上对齐)、bottom(下对齐)、center(居中)、center_horizontal(水平居中)和center_vertical(垂直居中)等,这些值还可以组合使用,中间用“|”分开。

android:gravity和android:layout_gravity的区别在于:

(1)android:gravity:用于设置该View内部内容的对齐方式。

(2)android:layout_gravity:用于设置该View在其父View中的对齐方式。

2.  相对布局(RelativeLayout)

        相对布局中的视图组件是按相互之间的相对位置来确定的,并不是线性布局中的必须按行或按列单个显示,在此布局中的子元素里与位置相关的属性将生效。

        例如“android:layout_below”、“android:layout_above”等。注意在指定位置关系时,引用的ID必须在引用之前,先被定义,否则将出现异常。RelativeLayout是Android布局结构中最灵活的一种布局结构,比较适合一些复杂界面的布局。

<?xml version="1.0" encoding="utf-8"?>
<!-- 最外面的布局文件为相对布局,控件纵向摆放 -->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

时光の尘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值