Android之给Button设置OnClick监听器

来源:互联网 发布:axure for mac 汉化 编辑:程序博客网 时间:2024/06/01 10:29
方法一:通过匿名内部类实现

步骤1:在layout文件夹下的 activity_main.xml文件中创建一个Button组件,例如:

<Button

android:id="@+id/button1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/button1_name" />

可以创建一个简单的Button组件,其中它的id名是button1;宽度和高度都是包含内容;按钮上显示的字是“这是一个按钮”,此处不建议直接在android:text的属性中直接写上="这是一个按钮",而是通过res文件夹下的values文件夹下的strings.xml文件统一设置(<string
name="button1_name">这是一个按钮</string>)。

步骤2:初始化当前所需的Button控件,具体如下:

a:在src文件夹下的MainActivity.java文件中声明要初始化的对象,如:private Button testbutton;

b:在MainActivity.java文件的protected void onCreate(Bundle savedInstanceState) {......}方法中添加如下代码:

/*因为在res文件夹下的每一项资源都会自动生成在gen文件夹下,所以我们可以通过findViewById(R.id.button1)找到id名为button1的组件;又因为这些组件都是View的子类,所以找到之后需要一个(Button)进行转型为Button*/

testbutton = (Button) findViewById(R.id.button1);

/*此处便是使用匿名内部类来实现监听了;通过Button对象调用OnClick监听器,然后可以在public
void onClick(View arg0) {......}方法中完全监听事件的操作;例如我是在Button按钮被点击后,在Console中打印一句话*/

testbutton.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View arg0) {

// TODO Auto-generated method stub

System.out.println("糟糕,我被点击了!!");

}

});

PS:此处需要导下包:Eclipse快捷键是(Ctrl+Shift+O)进行导包操作,选择其中的android.view.View.OnClickListener包
0 0