button:
与imageButton的不同点:
button有text属性,而imageButton没有
imageButton有src属性,而button没有;
两者都有background;
监听事件:
button 与 imageButton通过成员函数setOnClickListen(OnClickListener)来添加点击事件;
监听事件的实现方法:
1.匿名内部类:
第一步:初始化当前所需要的控件;先声明之后通过findViewById赋值;
第二步:设置button的监听器,通过监听器,实现点击button要操作的事情;即调用setOnClicklistener(new OnClickListener() {...});
2.独立类的实现
第一步:在外部new一个OnClickListener(),命名为listener;
第二步:同匿名内部类的第一步;
第三步:同匿名内部类的第二步,但setOnClickListener()函数的参数为第一步中的listener;
在Android中可以用Log.i(tag,msg);tag为打印标志-"tag",而msg为打印内容"...";
3.接口方式的实现:
第一步:在Activity后添加implements OnClickListener,之后会提示实现方法,选add;这样在后面会出现onClick的方法;
第二步:同匿名内部类的第一步;
第三步:同匿名内部类的第二步,但setOnClickListener()函数的参数为this;
imageButton:
总体上和Button差不太多,但要注意通过src赋上"@drawable/..."即drawable文件夹下的图片资源;
补充:src显示的是图片内容即前景,原图的大小多大它就多大,background是背景,背景可以是颜色,也可以是图片,而且background会根据控件给定的长宽进行拉伸,两者可以同时使用
注意:一般资源不直接放到布局的xml文件中,而推荐放到values对应的文件夹下。如字符串登陆,首先在values的string的xml文件下添加字符串登陆并给它起名为buttonName,之后在要使用的位置下用"@string/buttonName"的方式就可以得到字符串登陆;
res文件夹下的所有资源都会在gen目录下包的R文件中生成一个对应的资源id。
findViewById通过gen下的R文件的唯一得id号