微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > Android用户界面详解

Android用户界面详解

时间:10-08 来源:互联网 点击:

ts all hold child UI elements. Some provide visible UI, and others only handle child layout.

这些对象拥有UI子元素。一些提供可视的UI,另一些只处理子元素的布局。

Class

Description

AbsoluteLayout

可以通过精确的坐标(如屏幕像素)指定子对象相对父容器的位置

FrameLayout

负责显示单一对象的Layout

Gallery

一个以水平滚动方式显示有序图片列表的显示器

GridView

显示一个可滚动的有m列n行的表格

LinearLayout

以水平或垂直方式显示子元素的Layout。如果窗体的长度超过了屏幕的长度,将会出现滚动条

ListView

显示一个可滚动的单列列表

PopupList

一个独立的带边框的元素弹出列表

RelativeLayout

能够指定子对象相对于其它对象(如A在B的左边)或父对象(如在父容器的顶部)的位置

ScrollView

一个垂直的元素滚动列

Spinner

在一个单行文本框中,同时只显示一个有序列表中的一个项。类似于一个可以水平或垂直滚动的单行listbox

SurfaceView

提供直接访问一个可画图的界面。可以控制在界面顶部的子视图层。SurfaceView是提供给需要直接画像素而不是使用窗体部件的应用使用的。

TabHost

提供一个页签选择列表,监视点击并在一个页签被点击时保证应用切换屏幕。

TableLayout

一个拥有任意行和列的表格layout,每一个单元格拥有窗体部份。行会根据最大的列而自动调整大小。单元格边框不可见。

ViewFlipper

一个在单行文本框中同一时刻只显示一项的列表组件。它可以根据时间周期切换显示项,类似一个幻灯机。

ViewSwitcher

类似ViewFlipper

3.2.3数据绑定

有些View groups会有UI。这些对象通常是AdapterView类的子类.例如包括图库和列表视图, 它们具有两个共同的职责:

· 填充布局数据

· 处理用户操作

填充布局数据

填充布局数据通常通过把这个类绑定到一个Adapter来完成,Adapter从某个地方获取它的数据,或者是代码提供的一个列表,或者是来自设备数据库的查询结果。

// Get a Spinner and bind it to an ArrayAdapter that

// references a String array.

Spinner s1 = (Spinner) findViewById(R.id.spinner1);

ArrayAdapter adapter = ArrayAdapter.createFromResource(

this, R.array.colors, android.R.layout.simple_spinner_item);

adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

s1.setAdapter(adapter);

// Load a Spinner and bind it to a data query.

private static String[] PROJECTION = new String[] {

People._ID, People.NAME

};

Spinner s2 = (Spinner) findViewById(R.id.spinner2);

Cursor cur = managedQuery(People.CONTENT_URI, PROJECTION, null, null);

SimpleCursorAdapter adapter2 = new SimpleCursorAdapter(this,

android.R.layout.simple_spinner_item, // Use a template

// that displays a

// text view

cur, // Give the cursor to the list adatper

new String[] {People.NAME}, // Map the NAME column in the

// people database to...

new int[] {android.R.id.text1}); // The text1 view defined in

// the XML template

adapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

s2.setAdapter(adapter2);

注意:使用CursorAdapter时,必须有People._ID, 否则将会发生异常。

处理用户操作

Android通过设置类的AdapterView.OnItemClickListener 成员到一个监听者并捕捉用户的操作事件,来处理用户的操作。

// Create a message handling object as an anonymous class.

private OnItemClickListener mMessageClickedHandler = new OnItemClickListener() {

public void onItemClick(AdapterView parent, View v, int position, long id)

{

// Display a messagebox.

sh

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top