学Android---实现OnClickListener的三种方法

1、OnClickListener
监听Button,TextView等控件,当这些控件被点击时,响应相应的事件,通过onClick()方法实现具体的响应

2、实现的三种方式
(1)匿名内部类
实现形式:

        button.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                System.out.println("匿名内部类!");
            }
        });

用于控件较少的情况,在这种情况下不需要单独创建一个OnClickListener类

(2)通过外部类实现
实现形式:

    class MyOnClickListener implements OnClickListener{
        @Override
        //父类方法:让所有点击按钮事件做出同样的动作
        public void onClick(View v) {
            // TODO Auto-generated method stub
            Toast.makeText(MainActivity.this, "外部类", Toast.LENGTH_SHORT).show();
        }
    }
        button1.setOnClickListener(new MyOnClickListener(){
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                super.onClick(v);
                Toast.makeText(MainActivity.this, "点击Button1", Toast.LENGTH_SHORT).show();
            }
        });

        button2.setOnClickListener(new MyOnClickListener(){
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                super.onClick(v);
                Toast.makeText(MainActivity.this, "点击Button2", Toast.LENGTH_SHORT).show();
            }
        });

这种方式一般用得比较少

(3)通过接口实现
实现形式:

public class MainActivity extends Activity implements OnClickListener{
        button.setOnClickListener(this);

 public void onClick(View v) {
        // TODO Auto-generated method stub
        switch(v.getId()){
        case R.id.xx:
         ...
         ...
        }
    }
}

这种方式一般用于控件较多的情况,通过switch语句,使不同的按钮,响应不同的方式

你可能感兴趣的:(程序嫒的Android学习之路)