zoukankan      html  css  js  c++  java
  • Button事件的三种实现方法

    onclick事件的定义方法,分为三种,分别为在xml中进行指定方法;在Actitivy中new出一个OnClickListenner();实现OnClickListener接口三种方式。

    1.在xml中实现方法的绑定

        <Button
            android:id="@+id/btn_add"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignLeft="@+id/editText1"
            android:layout_below="@+id/editText1"
            android:layout_marginTop="46dp"
            android:onClick="btnadd"
            android:text="+" />

    在MainActivity中实现绑定的方法btnadd

       public void btnadd(View v)
        {
            //绑定的btnadd方法
            Toast.makeText(getApplicationContext(), "我是绑定方法", Toast.LENGTH_LONG).show();
        }

    2.NEW一个OnClickListenner()接口实例

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            
            //关联控件
            btn_add=(Button) findViewById(R.id.btn_add);
            btn_reduce=(Button) findViewById(R.id.btn_reduce);
            et=(EditText) findViewById(R.id.editText1);
    
            //第二种,接口实例化
            btn_add.setOnClickListener(new OnClickListener() {
                
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    
                }
            });
        }

    上面这种是最为常见一种实现方法,为了让oncreat中的代码更清晰,我们也会是用另一种写法

        btn_add.setOnClickListener(add);

    实现add方法:

        OnClickListener add =new OnClickListener() {
            
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                
            }
        };

    3.实现OnClickListener接口

      首先类要引用OnClickListener接口,并实现方法

    public class MainActivity extends Activity implements OnClickListener{
        
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            
            //关联控件
            btn_add=(Button) findViewById(R.id.btn_add);
            btn_reduce=(Button) findViewById(R.id.btn_reduce);
            et=(EditText) findViewById(R.id.editText1);
    
            //第三种,使用接口
            btn_add.setOnClickListener(this);
            btn_reduce.setOnClickListener(this);
        }
    
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            switch(v.getId())
            {
            case R.id.btn_add:
                
                break;
            case R.id.btn_reduce:
                
                break;
    
            }        
        }
    
    }
  • 相关阅读:
    vscode的插件收集
    关于vue移动端的适配
    Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null objec
    android studio 使用 aidl(三)权限验证
    Android权限级别(protectionLevel)
    android studio 使用 aidl(二)异步回调
    android studio 使用 aidl(一)基础用法
    如何获取Android唯一标识(唯一序列号)
    android studio 生成aar和引用aar
    android studio 编译NDK android studio 生成.so文件
  • 原文地址:https://www.cnblogs.com/lossingdawn/p/4552167.html
Copyright © 2011-2022 走看看