首先看一下下面这张图片,很明显 这些控件都是View的子类,看完之后你可能还会发现,button 居然还是textview的子类,那么既然是子类,那么view的基本属性,想必都拥有,下面我们分别看下各个控件的简单使用。
button:
按钮平时用来点击的,那么就介绍下它的四种监听方式。第一种:直接xml布局文件写onclick属性。第二种:主类 实现接口,复写方法。第三种:匿名内部类的方式。第四种:成员内部类的方式,如下所示:
package com.example.day0419_activity;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity implements OnClickListener{
private Button btn2,btn3,btn4;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn2 = (Button) findViewById(R.id.btn2);
btn3 = (Button) findViewById(R.id.btn3);
btn4 = (Button) findViewById(R.id.btn4);
btn2.setOnClickListener(this);
btn3.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Log.i("123", "方法三");
}
});
btn4.setOnClickListener(new MyListener());
}
public void test(View v){
Log.i("123", "方法一");
}
@Override
public void onClick(View v) {
Log.i("123", "方法二");
}
class MyListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Log.i("123", "方法四");
}
}
}
,另外有个也经常使用。false为不可被点击的状态,true为正常。
除了点击事件 还有
setOnLongClickListener、setOnFocusChangeListener、setOnTouchListener、
在setOnTouchListener中可以获取event.getX();event.getY();的坐标值,这里的坐标是针对于绑定的控件,这里就是button的左上角的位置来的。
对button设置clickable(false)属性,就失去点击事件。同理setLongClickable(false)...
可以给button设置setPress(true)属性,初始化时,button处于按下状态。