常见的事件
- 单击事件 onClickListener
- 长按事件 onLongClickListener 手机端一个比较特别的事件。
- 滑动事件 onTouchListener
- 键盘事件 onKeyListener
- 焦点事件 setOnFocusChangeListener
还有很多事件,这里不一一列举了。
常见事件的响应实现方式
(1)。动态设置(最常用的方式)
在MainActivity的onCreate中
Button bt = (Button) findViewById(R.id.button1);
bt.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v){
System.out.println("button event occur!");
}
});
(2) 配置方式, 仅限于onClick
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/buttonText"
android:onClick="onClickFunc" />
这是Android 给我们做好了一个现成的onClick事件处理函数,再没提供别的?我也好奇。
在activity 中实现onClickFunc方法,如下:
public void onClickFunc (View v){
}
(3) 可复用的方式
这实际上是在上面提到的方法中进行微调。 将组件和具体的事件处理函数进行了分离。逻辑紧凑了。
在onClick方法中判断哪个组件发生了相应事件。
bt.setOnClickListener(myListener);
private View.OnClickListener myListener = new OnClickListener(){
@Override
public void onClick(View v){
switch (v.getId()){
case R.id.button1:
System.out.println("button1 event occur!");
case R.id.button2:
System.out.println("button2 event occur!");
case R.id.button3:
System.out.println("button3 event occur!");
}
};
};