系出名门Android(2)

介绍

在 Android 中各种布局的应用,以及菜单效果的实现

各种布局方式的应用,FrameLayout, LinearLayout, TableLayout, AbsoluteLayout, RelativeLayout

为指定元素配置上下文菜单,为应用程序配置选项菜单,以及多级菜单的实现

1、各种布局方式的演示

res/layout/main.xml

<?xml version="1.0" encoding="utf-8"?>
<!--
layout_width - 宽。fill_parent: 宽度跟着父元素走;wrap_content: 宽度跟着本身的内容走;直接指定一个 px 值来设置宽
layout_height - 高。fill_parent: 高度跟着父元素走;wrap_content: 高度跟着本身的内容走;直接指定一个 px 值来设置高
-->

<!--
LinearLayout - 线形布局。
    orientation - 容器内元素的排列方式。vertical: 子元素们垂直排列;horizontal: 子元素们水平排列
    gravity - 内容的排列形式。常用的有 top, bottom, left, right, center 等,详见文档
-->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:gravity="right"
    android:layout_width="fill_parent" android:layout_height="fill_parent">

    <!--
    FrameLayout - 层叠式布局。以左上角为起点,将  FrameLayout 内的元素一层覆盖一层地显示
    -->
    <FrameLayout android:layout_height="wrap_content"
        android:layout_width="fill_parent">
        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content" android:text="FrameLayout">
        </TextView>
        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content" android:text="Frame Layout">
        </TextView>
    </FrameLayout>

    <TextView android:layout_width="wrap_content"
        android:layout_height="wrap_content" android:text="@string/hello" />

    <!--
    TableLayout - 表格式布局。
        TableRow - 表格内的行,行内每一个元素算作一列
        collapseColumns - 设置 TableLayout 内的 TableRow 中需要隐藏的列的列索引,多个用“,”隔开
        stretchColumns - 设置 TableLayout 内的 TableRow 中需要拉伸(该列会拉伸到所有可用空间)的列的列索引,多个用“,”隔开
        shrinkColumns - 设置 TableLayout 内的 TableRow 中需要收缩(为了使其他列不会被挤到屏幕外,此列会自动收缩)的列的列索引,多个用“,”隔开
    -->
    <TableLayout android:id="@+id/TableLayout01"
        android:layout_width="fill_parent" android:layout_height="wrap_content"
        android:collapseColumns="1">
        <TableRow android:id="@+id/TableRow01" android:layout_width="fill_parent"
            android:layout_height="wrap_content">
            <TextView android:layout_width="wrap_content"
                android:layout_weight="1" android:layout_height="wrap_content"
                android:text="行1列1" />
            <TextView android:layout_width="wrap_content"
                android:layout_weight="1" android:layout_height="wrap_content"
                android:text="行1列2" />
            <TextView android:layout_width="wrap_content"
                android:layout_weight="1" android:layout_height="wrap_content"
                android:text="行1列3" />
        </TableRow>
        <TableRow android:id="@+id/TableRow01" android:layout_width="wrap_content"
            android:layout_height="wrap_content">
            <TextView android:layout_width="wrap_content"
                android:layout_height="wrap_content" android:text="行2列1" />
        </TableRow>
    </TableLayout>

    <!--
    AbsoluteLayout - 绝对定位布局。
        layout_x - x 坐标。以左上角为顶点
        layout_y - y 坐标。以左上角为顶点
    -->
    <AbsoluteLayout android:layout_height="wrap_content"
        android:layout_width="fill_parent">
        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content" android:text="AbsoluteLayout"
            android:layout_x="100px"
            android:layout_y="100px" />
    </AbsoluteLayout>

    <!--
    RelativeLayout - 相对定位布局。
        layout_centerInParent - 将当前元素放置到其容器内的水平方向和垂直方向的中央位置(类似的属性有 :layout_centerHorizontal, layout_alignParentLeft 等)
        layout_marginLeft - 设置当前元素相对于其容器的左侧边缘的距离
        layout_below - 放置当前元素到指定的元素的下面
        layout_alignRight - 当前元素与指定的元素右对齐
    -->
    <RelativeLayout android:id="@+id/RelativeLayout01"
        android:layout_width="fill_parent" android:layout_height="fill_parent">
        <TextView android:layout_width="wrap_content" android:id="@+id/abc"
            android:layout_height="wrap_content" android:text="centerInParent=true"
            android:layout_centerInParent="true" />
        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content" android:text="marginLeft=20px"
            android:layout_marginLeft="20px" />
        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content" android:text="xxx"
            android:layout_below="@id/abc" android:layout_alignRight="@id/abc" />
    </RelativeLayout>

</LinearLayout>

时间: 2024-09-20 11:07:13

系出名门Android(2)的相关文章

系出名门Android(8)

系出名门Android(8) - 控件(View)之TextSwitcher,Gallery,ImageSwitcher,GridView,ListView,ExpandableList 介绍 在 Android 中使用各种控件(View) TextSwitcher - 文字转换器控件(改变文字时增加一些动画效果) Gallery - 缩略图浏览器控件 ImageSwitcher - 图片转换器控件(改变图片时增加一些动画效果) GridView - 网格控件 ListView - 列表控件 E

系出名门Android(7)

系出名门Android(7) - 控件(View)之ZoomControls,Include,VideoView,WebView,RatingBar,Tab,Spinner,Chronometer,ScrollView 介绍 在 Android 中使用各种控件(View) ZoomControls - 放大/缩小按钮控件 Include - 整合控件 VideoView - 视频播放控件 WebView - 浏览器控件 RatingBar - 评分控件 Tab - 选项卡控件 Spinner -

系出名门Android(6)

系出名门Android(6) - 控件(View)之DatePicker,TimePicker,ToggleButton,EditText,ProgressBar,SeekBar,AutoCompleteTextView,MultiAutoCompleteTextView 介绍 在 Android 中使用各种控件(View) DatePicker - 日期选择控件 TimePicker - 时间选择控件 ToggleButton - 双状态按钮控件 EditText - 可编辑文本控件 Prog

系出名门Android(5)

系出名门Android(5) - 控件(View)之TextView,Button,ImageButton,ImageView,CheckBox,RadioButton,AnalogClock,DigitalClock 介绍 在 Android 中使用各种控件(View) TextView - 文本显示控件 Button - 按钮控件 ImageButton - 图片按钮控件 ImageView - 图片显示控件 CheckBox - 复选框控件 RadioButton - 单选框控件 Anal

系出名门Android(4)

系出名门Android(4) - 活动(Activity),服务(Service),广播(Broadcast),广播接收器(BroadcastReceiver) 介绍 在 Android 中使用 Activity, Service, Broadcast, BroadcastReceiver 活动(Activity) - 用于表现功能 服务(Service) - 相当于后台运行的 Activity 广播(Broadcast) - 用于发送广播 广播接收器(BroadcastReceiver) -

系出名门 Android系列文章索引

介绍 系出名门 Android 系列文章索引:搭建开发环境, 布局, 菜单, 对话框, 通知, 活动, 服务, 广播, 广播接收器, 控件, 数据库支持, 内容提供器, HTTP通信, XML解析, 异步消息处理 1.系出名门Android(1) - 在 Windows 下搭建 Android 开发环境,以及 Hello World 程序 介绍 搭建 Android 的开发环境,以及写一个简单的示例程序 在 Windows 下搭建 Android 开发环境 Android 项目的目录结构说明 写

系出名门Android(3)

介绍 在 Android 中种对话框及各种通知效果的应用 常用对话框的使用,弹出式对话框.日期选择对话框.时间选择对话框.进度条对话框 通知(出现在通知列表)和提示性通知(Toast)的演示 1.常用对话框的演示 res/layout/main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com

系出名门Android(10)

介绍 在 Android 中与服务端做 HTTP 通信,解析 XML,通过 Handler 实现异步消息处理 HTTP 通信 - 与服务端做 HTTP 通信,分别以 GET 方式和 POST 方式做演示 XML 解析 - 可以用两种方式解析 XML,分别是 DOM 方式和 SAX 方式 异步消息处理 - 通过 Handler 实现异步消息处理,以一个自定义的异步下载类来说明 Handler 的用法 1.HTTP 通信和 XML 解析的 Demo MySAXHandler.java package

系出名门Android(9)

介绍 在Android中使用 SQLite, ContentProvider 数据库支持(SQLite) - Android 开发平台提供了操作 SQLite 数据库的相关 API 内容提供器(ContentProvider) - 当数据需要在应用程序之间共享时,可以在某程序中使用 ContentProvider 定义 URI, 以使其它应用程序可以通过此 URI 访问指定的数据 1.SQLite 的 Demo DatabaseHelper.java package com.webabcd.SQ