案例一
1. 事件监听(三种写法)
1.1 标签上直接绑定监听方法
如:android:onClick=”xxx”
为控件添加ID;
在java代码中创建监听方法:
public void xxx(View view){
两点注意:一定要带View参,二是要公开,无返回
int id=view.getId();
switch(id){
case R.id.XXX:
break;
case R.id.yyy:
break;
}
}
在onCreate()中通过findViewById()在View中查找控件。
1.2 创建监听器对象,组件再绑定监听器对象
1.2.1 匿名内部类
btn1.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
Button btn = (Button)v;
xxx.append(btn.getText());
}
});
1.2.2 使用匿名内部类并定义成全局的属性(代码的重用)
private View.OnClickListener myOnClickListener = new View.OnClickListener(){
@Override
public void onClick(View v){
}
};
在onCreate()中设置某个控件的事件为myOnClickListener:
btn1.setOnClickListener(myOnClickListener);
注意:关于控件ID的命名规则:
控件所在activity的名字自定义的控件名
比如:TextView
tv_main_name
- 文本框(TextView)
2.1 简介
TextView直接继承View,作用就是在界面上显示文本(类似于Swing中的JLabel),同时它还是EditText、Button两个UI组件类的父类。
另外Android关闭了它的文字编辑功能,如果想编辑内容,则可以使用EditText。
2.2 TextView常用属性
2.2.1 text
2.2.2 autoLink
2.2.3 singleLine(已过时,现在应为:android:lines)
2.2.4 lines 设置行数
2.2.5 minLines 最小行数
2.2.6 textColor 文本颜色
2.2.7 textSize 文字大小
2.2.8 textStyle
字体风格粗体、斜体
2.2.9 backgroud
设置背景,可以是颜色或图片
2.2.10 drawableXX
设置文本的icon
2.2.11 ellipsize 当文字长度超过textview宽度时的显示方式
android:ellipsize=”start” 省略号显示在开头 “…pedia”
android:ellipsize=”end” 省略号显示在结尾 “encyc…”
android:ellipsize=”middle” 省略号显示在中间 “en…dia”
android:ellipsize=”marquee” 以横向滚动方式显示(另外还需要设置其它三个属性,否则不滚动,即必须让该控件获得焦点)
案例二 常用编辑框
3. 编辑框(EditText)
3.1 简介
EditText和TextView非常相似,它与TextView共用了绝大总分XML属性和文法,
二者最大区别在于:EditText可以接受用户输入。
3.2 常用属性
3.2.1 inputType
它是EditText组件最重要的属性,它相当于HTML中标签的type属性,用于EditText指定输入组件的类型。
常用取值有:number|numberPassword|date|phone
3.2.2 hint:提示字符信息
3.2.3 lines:设置行数
案例三:椭圆形、背景渐变的文本框
4. Android资源
4.1 什么是资源
指在res文件夹下的xml文件,每一种类型的xml文件都对应了一种资源。
例如:外形资源(shape)、尺寸资源(dimension)、颜色资源(color)等
4.2 尺寸资源和颜色资源放res/values目录下
4.3 *.xml(文本框的外形资源)可放到drawable目录下
4.4 设置渐变色与背景色只能取其一,后面会覆盖前面的
shape
ctrl+alt+l 格式化代码
案例四:根据获得/失去焦点边框变色编辑框
5. 选择器
5.1 作用:根据控件状态显示不同样式
5.2 Item: 指定不同状态下控件显示哪个样式
选择器在控件不同状态时应用不同的外形资源。
在drawable中创建选择器:selector