安卓入门之Button事件响应

版权声明:翀版 https://blog.csdn.net/biggerchong/article/details/83012870

Android环境 介绍

Android Studio 2.3.3  、Java之后的安卓入门博客都是在这个环境下进行的。


   Button原理简单分析

      众所周知,button的作用就是响应事件,当button isChecked 就会执行响应的函数和操作。Android中Button的使用方法大同小异,Android中引入了Listener监听器来监听OnCilcked。接下来我们浅度分析一下(个人还不懂Android基层的原理):

  Button的继承顺序:

java.lang.Object
   ↳ android.view.View
     ↳ android.widget.TextView
       ↳ android.widget.Button

在android.view.View下有一个setOnClickListener函数

The above snippet creates an instance of View.OnClickListener and wires the listener to the button usingsetOnClickListener(View.OnClickListener). As a result, the system executes the code you write in onClick(View) after the user presses the button. (摘自Android官方文档)

可见Button其实就是通过实现setOnClickListener函数来完成点击事件响应的,当实例化interface View.onClickListener后(此接口用于设置一个回调(callback),当View被点击时被调用),就可以利用setOnClickListener来实现简单事件响应了。其中的内部原理还在更加底层的继承、接口中,这里今后还会更新(本人学完后)。


Button实现三种方法

方法一:可视化编程

     在对应button的XML可视化界面中,找打想实现的button对应的onclick对应的选项,然后在编辑框中输入对应的函数名(如:btnAdd);然后在对应的Activity中实现次函数就可以了:

 public void btnAdd(View view) //方法一:函数必须是public void **(View view),只能更改函数名
 {
    //填写想要实现的功能

 }

    方法二:自定义类

//Activity中

Button btn=(Button)findViewById(R.id.id_button);
btn.setOnClickListener(new MyClickListener());

  //自定义实现Interface View.OnClickListener
    private class MyClickListener impletments View.OnClickListener 
                                                //实现Interface中的onClick
    {
        public void onClick(View v)
        {
            //实现事件响应
        }

    }

   方法三:匿名类(推荐)

//Activity中
Button  btn=(Button)findViewById(R.id.id_button);

btn.setOnClickListener( new View.OnClickListener()  //匿名类
    {
        public void onClick(View v)
        {
            //Button响应事件
        }

     }

);

   在Android Button事件基本上都是一次性事件,不会被重复用到,如果按方法一、二来操作会产生大量方法和类,这样就不便于维护和调试了,所以方法三是个不错的选择。

谢谢观看,欢迎评论。(如有不对,请即使指点)

猜你喜欢

转载自blog.csdn.net/biggerchong/article/details/83012870