【转】http://blog.csdn.net/sky123123/article/details/5954446

在Android里面,添加Listener,具体步骤如下:

1.首先在layout里面定义Button并指定响应的Listener

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="<a href="http://schemas.android.com/apk/res/android"">http://schemas.android.com/apk/res/android"</a>
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
<Button
android:text="Button01"
android:id="@+id/Button01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="myClickH1"
/>
<Button
android:text="Button02"
android:id="@+id/Button02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="myClick2"
/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
</LinearLayout>

其中以下这两行就是新增的特性:

android:onClick="myClick1"

android:onClick="myClick2"

2.在活动里面定义public的方法myClick1、和myClick2

import android.app.Activity;
import android.os.Bundle;
import android.view.View;

public class TestOnClickListener extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

}
public void myClickHandler01(View v){
setTitle("myClick1");
}
public void myClick2(View v){
setTitle("myClick2");
}
}

import android.app.Activity;
import android.os.Bundle;
import android.view.View;

public class TestOnClickListener extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

}
public void myClick1(View v){
setTitle("myClick1");
}
public void myClick2(View v){
setTitle("myClick2");
}
}

也可以采用这种写法,将两个按钮设置到同一个Listener 代码如下所示:

android:onClick="onClick"

android:onClick="onClick"

import android.app.Activity;
import android.os.Bundle;
import android.view.View;

public class TestOnClickListener extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
public void myClickHandler(View v){
switch (v.getId()) {
case R.id.Button01:
setTitle("Click1");
break;
case R.id.Button2:
setTitle("Click2");
break;
}
}
}



更多相关文章

  1. android 使用xml定义自己的View
  2. 自定义android RadioButton样式
  3. php直播源码安卓自定义Dialog设置自动消失
  4. 自定义RatingBar
  5. 自定义android模块不编译的问题
  6. android 自定义 view
  7. android —— 自定义控件 竖向的ViewPager,上下滑动的组件,android
  8. 【特效】【自定义控件】关键字飘飞效果

随机推荐

  1. 使用jQuery排序,删除和追加元素在IE中不起
  2. js实现字符全排列算法
  3. [JavaScript] 将字符串数组转化为整型数
  4. 创建线程时设置CPU关联
  5. JavaScript 中 Object ,Prototype 相关的
  6. 检查通过程序的C管道 - 边界情况
  7. jQuery tipsy:手动触发和延迟
  8. 使用Chrome开发工具查找造成FOUC的原因
  9. 在平台上获取,可移植,更大和更快(无符号)的整
  10. 【web前端】可筛选[输入搜索]的select