Android用户界面概览
用户界面的概观
全部的Android应用程序的用户界面元素都是用View和ViewGroup对象构建的。View就是在手机屏幕上描绘一个能够与用户交互的一个对象。ViewGroup是包括View对象和其它ViewGroup对象的一个容器对象,以便定义所包括的接口的布局。
Android提供的View和ViewGroup的子类的集合,为我们提供了了经常使用的输入控件(比方button和文本字段) 和各种布局模型(比方线性布局和相对布局)
用户界面的布局
每一个应用程序的组件的用户界面都是用View和ViewGroup对象的层次结构来定义的,如图1所看到的。每一个ViewGroup是用来组织View对象的一个隐形的一个容器。这些View对象可能是输入控件或者其它窗口小部件。这个层次结构树依据你的需求可简单可复杂(可是简单对性能来说是最好的)
图1. 定义UI布局的view层次结构的插图
声明一个布局(在Activity类种onCreate方法中调用setContentView(R.layout.main))后,你能够在代码中实例化一个View对
象和创建一个树结构,可是最简单和最有效的方法是在一个xml文件里定义布局。这个XML文件提供了一个可读的布局结构,类似于HTML
View所相应的的XML元素的名字各自相应了它所代表的的Android类。所以一个<TextView>元素在UI中创建了一个TextView部件,一个<LinearLayout>元素创建了一个LinearLayout view group
举例说明,一个简单的包括text view和button的垂直布局例如以下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TextViewandroid:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="I am a TextView"/>
<Buttonandroid:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="I am a Button"/>
</LinearLayout>
当你在你的应用程序中载入一个布局资源时,Android将该布局资源文件的每一个节点初始化成执行时的对象 。能够拿到这个对象(findViewById(R.id.tv))来定义附加的行为,查询此对象的状态,或者改动布局。
用户界面的组件
不一定必须通过View和ViewGroup对象来创建UI。Android提供的几个应用程序组件,为我们提供了标准的用户界面布局,我们仅仅需为这个布局定义内容就能够了。这些用户界面组件(比方Action Bar,Dialogs,Status Notifications)都有自己唯一的一组APIs,这些APIs都定义在各自的文档里。
Android用户界面概览的更多相关文章
- 【转】Android系统概览
这篇文章其实原文叫 <老罗的Android之旅>导读PPT 是罗升阳的博客,我觉得用“Android系统概览”作为标题更贴切些,对于在应用层已经开发了一段时间的人来说,读完之后会有很多体会 ...
- android用户界面详尽教程实例
android用户界面详尽教程实例 1.android用户界面之AlarmManager教程实例汇总http://www.apkbus.com/android-48405-1-1.html2.andr ...
- Android 用户界面---拖放(Drag and Drop)(三)
设计拖放操作 本节主要内容如下: 1. 如何开始拖拽: 2. 在拖拽期间如何响应事件: 3. 如何响应落下事件: 4. 如何结束拖放操作. 开始拖拽 用户使用一个拖拽手势开始拖拽,通常是在 ...
- Android 用户界面---拖放(Drag and Drop)(二)
拖拽事件监听器和回调方法 View对象既可以用实现View.OnDragListener接口的拖放事件监听器,也可以用View对象的onDragEvent(DragEvent)回调方法来接收拖拽事 ...
- Android 用户界面---拖放(Drag and Drop)(一)
用Android的拖放框架,能够允许用户使用图形化的拖放手势,把数据从当前布局中的一个View对象中移到另一个View对象中.这个框架包括:拖拽事件类.拖拽监听器.以及辅助的方法和类. 尽管这个框架主 ...
- Android用户界面布局(layouts)
Android用户界面布局(layouts) 备注:view理解为视图 一个布局定义了用户界面的可视结构,比如activity的UI或是APP widget的UI,我们可以用下面两种方式来声明布局: ...
- Android用户界面开发:Fragment
Android用户界面开发:Fragment 1:注意事项 3.0以前的Android 版本要使用FragmentActivity 来装载Fragment ,使用到support v4包. 3.0 ...
- android用户界面的教程实例---转自qianqianlianmeng的博客
1.android用户界面之AlarmManager教程实例汇总http://www.apkbus.com/android-48405-1-1.html2.android用户界面之文本编辑教程实例汇总 ...
- Android用户界面设计:基本button
Android用户界面设计:基本button 本文向你展示了在你的Android应用程序中创建一个简单的Button或ImageButton控件的步骤. 首先.你会学到怎样向你的布局文件里加入butt ...
随机推荐
- SGU 194. Reactor Cooling(无源汇有上下界的网络流)
时间限制:0.5s 空间限制:6M 题意: 显然就是求一个无源汇有上下界的网络流的可行流的问题 Solution: 没什么好说的,直接判定可行流,输出就好了 code /* 无汇源有上下界的网络流 * ...
- ubuntu 实现界面切换
1.按ALT+CTRL+F1切换到字符界面(Linux实体机) 如果是VMware虚拟机安装的Linux系统,则切换到字符界面的时候需要以下操作 按下ALT+CTRL+SPACE(空格),ALT+CT ...
- YII Query Builder
今天遇到一个Query Builder 联合查询问题: 查询关联表某个字段的总数
- jsp注释方式
1,HTML的注释方法 <!--...add your comments here...--> 说明:使用该注释方法,其中的注释内容在客户端浏览中是看不见的.但是查看源代码时,客户是可以看 ...
- PuTTY + Xming 远程使用 Linux GUI
from http://www.zw1840.com/blog/zw1840/2008/10/putty-xming-linux-gui.html 在家里的PC上用VMWare做了一个Oracle E ...
- Day14 HTML补充
一.认识前端 前端开发的核心语言: html - 超文本标记语言 结构 css - 层叠样式表 样式 javascript - 脚本语言 行为 <html></html> 双标 ...
- linux 下makefile
linux下c编程中makefile是必须会的,我刚开始学,将我对makefile的理解记录下来. 通常我们在windows下编写c程序,有各种ide工具为我们执行makefile工作但在linux下 ...
- IOS“多继承”
转自念茜的博客: 当单继承不够用,很难为问题域建模时,我们通常都会直接想到多继承.多继承是从多余一个直接基类派生类的能力,可以更加直接地为应用程序建模.但是Objective-C不支持多继承,由于消息 ...
- centos 下vmware 下添加硬盘到root
### #vmware 里找到硬盘拖大点...,如果不想从启动么,添加个新 #的也行.不过那个是另外的方法了 ### #### ##找下硬盘添加在哪里 #### fdisk -l //创建分 ...
- TWIG整合
//数字格式化 {{ (p.oldprice * p.count)|number_format(2,'.',',') }}