android 怎么自定义监听事件

android 怎么自定义监听事件,第1张

新建一个android工程,找到工程下res->layout->activity_main.xml文件并打开

从左侧工具栏,拖入button到界面上,button默认id为button1

1、在Activity中给button绑定监听事件(setOnClickListener),代码如下:

//button绑定监听事件

Button btn = (Button)findViewById(R.id.button1)

btn.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

AlertDialog.Builder build = new Builder(MainActivity.this)

build.setMessage("Test").show()

}

})

2、直接在layout.xml中绑定onclick事件;

同时添加对应的监听事件处理函数

public void Test(View v){

AlertDialog.Builder build = new Builder(this)

build.setMessage("Test").show()

}

运行程序,在模拟器/真机中查看效果

点击button,d出Test提示框,说明事件绑定成功。

您可以类似这样,先实例化子页面中的Button控件,然后将实例化后的控件绑定监听事件View view=LayoutInflater.from(context).inflate(R.layout.abc_action_bar_view_list_nav_layout,null) Button button= (Button) view.findViewById(R.id.action_bar) button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { //写上点击后要执行的事件 } })当然了,您要在不同页面实现不同的功能的话,您可以将以上代码写在viewPager.setOnPageChangeListener的滚动回调方法当中进行页面滚动的判断,从而执行不同的点击事件。希望能帮到您,如果还有什么问题,欢迎您继续追问。谢谢。

android中监听事件添加动作

方法/步骤

方法1:在activity组件的oncreate事件中直接定义

这种方法比较简单粗暴, 初学者可以用这种方式,比较容易理解。

Button btn = (Button) findViewById(R.id.myButton)btn .setOnClickListener(new View.OnClickListener() { public void onClick(View v) { //do something } })

方法2:在activity组件实现其接口,这样可以多外控件共享一个接口。

这个方法代码的可读性更强一点哦。

public class TestMedia extends Activity implements View.OnClickListener{ Button btn1 = (Button) findViewById(R.id.myButton1)Button btn2 = (Button) findViewById(R.id.myButton2)btn1 .setOnClickListener()btn2 .setOnClickListener()} public void onClick(View v) { switch (v.getId()) { case R.id. myButton1: //do something break case R.id. myButton2: //do something break }

在onClick函数里面,有的同学喜欢用if结构,那样代码执行效率有点低。用switch结构的,一定要注意break。

3

方法3:类似第二种,这样的好处在于如果需要实现多个监听接口

public class TestMedia extends Activity { Button btn1 = (Button) findViewById(R.id.myButton1)Button btn2 = (Button) findViewById(R.id.myButton2)btn1 .setOnClickListener(new ClickEvent())btn2 .setOnClickListener(new ClickEvent())}class ClickEvent implements View.OnClickListener public void onClick(View v) { switch (v.getId()) { case R.id. myButton1: //do somethingbreak case R.id. myButton2 : //do somethingbreak}

个人推荐使用第三中哦。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11920676.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存