android 学习六 构建用户界面和使用控件

1.常用Android控件最终都会继承自View类

2.ViewGroup是一些布局类列表的基类,包括View和ViewGroup

3.构造界面的三种方法

a.完全使用代码(太灵活,而不好维护)

b.在xml文件中定义(不太灵活)

c.结合两种方法,在xml文件中定义静态部份,在代码中实现灵活部分

4.定义

视图、部件、控件:表示一种用户界面元素

容器:包含视图的视图。例如网格,网格中的每一个单元格是一个视图

布局:容器和视图的可视排列,可以包含其他布局。

5.文本控件

a.TextView,比较有用属性“autolink",可以根据内容的形式,可以把内容作为参数来调用相应的活动,比如电话号码,可以直接点击然后进入打电话应用。

实现形式有3种

1.xml

<TextView .... android:autolink="email|web" .../>

2.使用TextView的setAutoLink方法

tv.setAutoLink(Linkfy.ALL); //这种方法要求内容在这个方法后面设置

3.使用Linkfy类的addLinks方法

Linkfy.addLinks(TextView的实例,Linkfy.ALL);

b.EditText重要属性inputType可以设置(多行、检查拼写错误、首字母大写...); hint属性显示提示内容

c.AutoCompleteTextView可以自动补齐输入的内容

AutoCompleteTextView actv = (AutoCompleteTextView)findViewById(R.id. actv);

ArrayAdapter<String> autoWord = new ArrayAdapter<String>(this,

android.R.layout. simple_dropdown_item_1line,

new String[]{"chendu" ,"shanghai" ,"wuhan" ,"Greek" });

actv.setAdapter(autoWord);//设置补齐的内容

d.MultiAutoCompleteView 可以设置从什么地方开始启用补齐功能

MultiAutoCompleteTextView mautoWord = (MultiAutoCompleteTextView)findViewById(R.id.mactv);

ArrayAdapter<String> autoMWord = new ArrayAdapter<String>(this,

android.R.layout. simple_dropdown_item_1line,

new String[]{"chendu" ,"shanghai" ,"wuhan" ,"Greek" ,"shuzhou" });

mautoWord.setAdapter(autoMWord);

//设置每当遇到逗号就启用补齐功能

mautoWord.setTokenizer( new MultiAutoCompleteTextView.CommaTokenizer());

6.按钮控件,包括基本按钮,图像按钮,切换按钮

6.1可以在xml中和代码中设置处理方法

xml中实现

android:onClick ="SaveItem"/>

代码中实现

btn.setOnClickListener(new OnClickListener(){

public void onClick(View v){

Intent intent = new Intent(Intent.ACTION_VIEW ,Uri.parse( "http://www.baidu.com"));

startActivity(intent);

}

});

6.2图像按钮设置图像

xml:

<ImageButton

android:id="@+id/imageBtn"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:background="@null"

android:src="@drawable/a1"

/>

代码:

ImageButton imBtn = (ImageButton)findViewById(R.id. imageBtn2);

imBtn.setImageResource(R.drawable. m2);

6.3设置状态选择器。选择器定义在drawable下的xml文件中内容如下:

<?xml version= "1.0" encoding ="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android" >

<item android:state_pressed= "true"

android:drawable="@drawable/m4" />

<item android:state_focused= "true"

android:drawable="@drawable/m3" />

<item android:drawable= "@drawable/m4"/>

</selector>

定义的顺序很重要,android是顺序测试,所以把特殊状态定义在前

设置选择器

<ImageButton

android:id="@+id/imageBtn3"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:background="@null"

android:src="@drawable/imagebuttonselector"

/>

6.4 ToggleButton两种状态的按钮

6.5 复选框 CheckBox

6.6 RadioGroup将多个RadioButton组合成为一组,获取选择的处理函数像这样

RadioGroup rg = (RadioGroup)findViewById(R.id. rgb);

rg.setOnCheckedChangeListener( new RadioGroup.OnCheckedChangeListener() {

@Override

public void onCheckedChanged(RadioGroup group, int checkedId) {

// TODO Auto-generated method stub

StringBuffer message = new StringBuffer();

RadioButton rb = null;

if(checkedId == -1){

message.append( "nothing seleced");

} else{

rb = (RadioButton)findViewById(checkedId);

message.append(rb.getText());

message.append( " is selected!");

}

TextView tv= (TextView)findViewById(R.id. btn_res_dis);

tv.setText(message.toString());

}

});

6.7ImageView

6.8 DatePicker TimePicker

时间: 2024-11-07 23:01:04

android 学习六 构建用户界面和使用控件的相关文章

Android学习笔记(七)——常见控件

//此系列博文是<第一行Android代码>的学习笔记,如有错漏,欢迎指正! Android 给我们提供了大量的 UI控件,下面我们简单试试几种常用的控件. 一.TextView 在布局文件中加入TextView元素: 1 <TextView android:text="This is TextView!" 2 android:gravity="center" 3 android:layout_width="match_parent&qu

Android学习(十七)自定义View控件 TopBar

一.创建自定义TopBar头部菜单条 实现步骤: 1.在values中添加attrs.xml文件,设置自定义属性. 2.添加Topbar类,继承RelativeLayout,实现具体功能. 3.添加到页面上,并设置添加事件. 参考代码: values\attrs.xml <?xml version="1.0" encoding="utf-8"?> <resources> <declare-styleable name="Top

android学习六(android中四种基本布局)

前面学习了android中的基本组件的使用,这一篇,我将总结下android中布局的使用,详细的看下面. 1.LinearLayout LinearLayoutyot又称线性布局,是一种常用的布局,它又可以有水平方向的和垂直方向的布局方式.前面一篇博文基本使用的是线性布局中的垂直布局,这个垂直布局的的方式是有属性android:orientation="vertical"控制的.如果把值指定为horizontal则控件就会在水平方向上排列了.下面我进行实战的操作吧. 新建一个andro

android快速上手(三)常用控件使用

完成了android的第一个程序HelloWorld,下面就开始控件的学习,下面是一些常见的控件. (一)TextView 简单的文本描述 (二)EditText 编辑框,输入文字信息 (三)Button 按钮,点击后会触发点击事件,可以对事件进行处理 (四)ImageView 图片控件,可以加载图片显示 (五)ListView 列表,需要跟适配器Adapter结合,适配器提供数据 (六)Toast 闪现提示语,常用于普通的提示文本,只显示一小段时间自动消失 (七)ScrollView 一般用于

Android自定义控件View(三)组合控件

不少人应该见过小米手机系统音量控制UI,一个圆形带动画效果的音量加减UI,效果很好看.它是怎么实现的呢?这篇博客来揭开它的神秘面纱.先上效果图 相信很多人都知道Android自定义控件的三种方式,Android自定义控件View(一)自绘控件,Android自定义控件View(二)继承控件,还有就是这一节即将学习到的组合控件.我们通过实现圆形音量UI来讲解组合控件的定义和使用. 组合控件 所谓组合控件就是有多个已有的控件组合而成一个复杂的控件.比如上图的音量控件就是一个完美的组合控件.我们来分析

WP8.1学习系列(第二十三章)——到控件的数据绑定

在本文中 先决条件 将控件绑定到单个项目 将控件绑定到对象的集合 通过使用数据模板显示控件中的项目 添加详细信息视图 转换数据以在控件中显示 相关主题 本主题介绍了如何在使用 C++.C# 或 Visual Basic 的 Windows 应用商店应用中将控件绑定到单个项或将列表控件绑定到项目集合.此外,本主题向你介绍了如何自定义控件项目的显示.如何基于所选内容实现详细信息视图,以及如何转换数据以进行显示.有关更多详细信息,请参阅使用 XAML 进行数据绑定. 路线图: 本主题与其他主题有何关联

android在代码中四种设置控件背景颜色的方法(包括RGB)

转载请注明出处: http://blog.csdn.net/fth826595345/article/details/9208771  TextView tText=(TextView) findViewById(R.id.textv_name); //第1种: tText.setTextColor(android.graphics.Color.RED);//系统自带的颜色类 // 第2种: tText.setTextColor(0xffff00ff);//0xffff00ff是int类型的数据

ExtJS4.2学习(17)表单基本输入控件Ext.form.Field

Ext.form.Field是所有表单输入控件的基类,其他的输入控件都是基于Ext.form.Field扩展得来的. Ext.form.Field中定义了输入控件通用的属性和功能函数,这些通用的属性和功能函数大致分为3大类:页面显示样式.控件参数配置和数据有效性检验.我们先来看看表单输入控件可以使用的校验显示方式.默认情况下,这些输入控件会监听blur事件,如果数据校验失败,就会根据msgTarget中的设置显示错误信息.通常,msgTarget会被设置为qtip,即使用QuickTip显示错误

C# Winform学习---MDI窗体的设计,PictureBox控件(图片上一页下一页),Timer控件,MenuStrip控件

一.MDI窗体的设计 1.MDI简介 MDI(Multiple Document Interface)就是所谓的多文档界面,与此对应就有单文档界面 (SDI), 它是微软公司从Windows 2.0下的Microsoft Excel电子表格程序开始引入的,Excel电子表格用户有时需要同时操作多份表格,MDI正好为这种操作多表格提供了很大的方便,于是就产生了MDI程序 2.效果图: 如下图所示,多窗体嵌套,其中一个是父窗体,其条是子窗体. 横向排列下面的窗体: 纵向排列下面的窗体: 关闭全部子窗