码迷,mamicode.com
首页 > 移动开发 > 详细

Android中使用4种方式实现按钮点击操作

时间:2015-07-16 11:57:08      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:android

      在Android开发中,对控件的操作是最基本的技术,尤其是对按钮的点击操作。我以下总结了4种按钮点击的实现方式。与大家分享,希望大家批评指正。

(1)匿名内部类实现

这种方式是最简单的实现,一般刚开始学习Android或者学习基于用户界面的开发,该方法是必学的。实现代码如下:

public class MainActivity extends Activity {

    private Button button;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        button = (Button) findViewById(R.id.id_btn);

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(MainActivity.this, "按钮被点击了", Toast.LENGTH_LONG).show();
            }
        });
    }

}

(2)Activity实现OnClickListener接口

使用该种方法,就是在当前Activity中implements View.OnClickListener.然后实现接口中未实现的方法。具体对按钮的操作或者业务逻辑在onClick()中实现,实现代码如下:

public class MainActivity extends Activity implements View.OnClickListener {

    private Button button;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        button = (Button) findViewById(R.id.id_btn);
        button.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.id_btn:
                Toast.makeText(MainActivity.this, "按钮被点击了", Toast.LENGTH_LONG).show();
                break;

            default:
                break;
        }
    }
}

(3)内部类实现OnClickListener接口

该方法就是在当前Activity主类中新建一个内部类,该内部类实现OnClickListener。思路同方法二。实现代码如下:

public class MainActivity extends Activity {

    private Button button;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        button = (Button) findViewById(R.id.id_btn);
        MyClick myClick = new MyClick();
        button.setOnClickListener(myClick);
    }

    class MyClick implements View.OnClickListener {
        @Override
        public void onClick(View v) {

            switch (v.getId()) {
                case R.id.id_btn:
                    Toast.makeText(MainActivity.this, "按钮被点击了", Toast.LENGTH_LONG).show();
                    break;
            }
        }
    }

}

(4)注解方式:参考我的另一篇博客(使用ButterKnife注解框架实现View的点击操作):http://blog.csdn.net/chenyufeng1991/article/details/46901101

版权声明:本文为博主原创文章,未经博主允许不得转载。

Android中使用4种方式实现按钮点击操作

标签:android

原文地址:http://blog.csdn.net/chenyufeng1991/article/details/46907655

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!