• 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;
    
            }        
        }
    
    }
  • 相关阅读:
    华为机考--约瑟夫问题
    华为机考--字符串压缩
    2014华为校招机考模拟--求最大递增数
    2014华为校招机考模拟--记票统计
    插入排序与归并排序的C#实现
    步入C#--hello world
    shell 命令用法
    About compiling some source code on centos
    ubuntu Install packages
    ssh命令
  • 原文地址:https://www.cnblogs.com/lossingdawn/p/4552167.html
Copyright © 2020-2023  润新知