多个按钮的OnClickListener()android [英] Multiple Buttons' OnClickListener() android

查看:154
本文介绍了多个按钮的OnClickListener()android的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我目前正在Android上制作一个简单的计算器应用程序.我试图设置代码,以便当按下数字按钮时,它将使用该数字更新计算器屏幕.目前,我正在这样做.

I'm currently making a simple calculator app on Android. Im trying to set up the code so that when a number button is pressed it updates the calculator screen with that number. Currently I'm doing it like this.

    Button one = (Button) findViewById(R.id.oneButton);
    one.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            TextView output = (TextView) findViewById(R.id.output);
            output.append("1");
        }
    });

它可以工作,但是我正在为计算器上的每个按钮编写相同的代码.可以想象,这是非常多余的.无论如何,我可以以更有效的方式编写此代码吗?一个涉及不为每个按钮编写此方法的方法?

It works but I'm writing this same code for every single button on the calculator. As you can imagine it is very redundant. Is there anyway I can write this code in a more efficient way? One that involves not writing this method for every single button?

推荐答案

您只需遵循以下步骤即可简化操作...

You Just Simply have to Follow these steps for making it easy...

您不必为每个Button编写新的onClickListener ...只需在Activity/Fragment中实现View.OnClickLister.它将实现一个名为onClick()的新方法来处理onClick Button,TextView`等的事件

You don't have to write new onClickListener for Every Button... Just Implement View.OnClickLister to your Activity/Fragment.. it will implement new Method called onClick() for handling onClick Events for Button,TextView` etc.

  1. 在您的Activity/Fragment
  2. 中实施OnClickListener()
  1. Implement OnClickListener() in your Activity/Fragment

public class MainActivity extends Activity implements View.OnClickListener {

}

  1. 在活动/片段"中实现onClick()方法
  1. Implement onClick() method in your Activity/Fragment

public class MainActivity extends Activity implements View.OnClickListener {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }

    @Override
    public void onClick(View v) {
      // default method for handling onClick Events..
    }
}

  1. 对按钮执行OnClickListener()

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.your_layout);

    Button one = (Button) findViewById(R.id.oneButton);
    one.setOnClickListener(this); // calling onClick() method
    Button two = (Button) findViewById(R.id.twoButton);
    two.setOnClickListener(this);
    Button three = (Button) findViewById(R.id.threeButton);
    three.setOnClickListener(this);

}

  1. 按ID查找按钮并实现您的代码.
  1. Find Buttons By Id and Implement Your Code..

@Override
public void onClick(View v) {

    switch (v.getId()) {

        case R.id.oneButton:
            // do your code
            break;

        case R.id.twoButton:
            // do your code
            break;

        case R.id.threeButton:
            // do your code
            break;

        default:
            break;
    }

}

请参阅此链接以获取更多信息:

Please refer to this link for more information :

https://androidacademic.blogspot.in/2016/12/multiple-buttons-onclicklistener-android.html

这将使许多按钮单击事件的处理变得更加容易,并且使其易于管理...

This will make easier to handle many buttons click events and makes it looks simple to manage it...

这篇关于多个按钮的OnClickListener()android的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆