android studio如何合并和读取多个相同功能但是文本不同的按钮

android studio如何合并和读取多个相同功能但是文本不同的按钮

举个例子

比如说我要做一个手机计算器,其中要实现按下0~9的数字键就能在TextView中显示

 public void onClick(View v) {
String str = textView.getText().toString();
switch(v.getId ()){
            case R.id.btn_0:
            	textView.setText(text+"0");
                break;
            case R.id.btn_1:
            	textView.setText(text+"1");
                break;
            case R.id.btn_2:
            	textView.setText(text+"2");
                break;
            case R.id.btn_3:
            	textView.setText(text+"3");
                break;
            case R.id.btn_4:
            	textView.setText(text+"4");
                break;
            case R.id.btn_5:
            	textView.setText(text+"5");
                break;
            case R.id.btn_6:
            	textView.setText(text+"6");
                break;
            case R.id.btn_7:
            	textView.setText(text+"7");
                break;
            case R.id.btn_8:
            	textView.setText(text+"8");
                break;
            case R.id.btn_9:
                textView.setText(text+"9");
                break;
    }
  }

这样的代码看起来明显有点冗余

下面有一种简洁一点的方式,大家可以参考一下:

 public void onClick(View v) {
String str = textView.getText().toString();
switch(v.getId ()){
            case R.id.btn_0:
            case R.id.btn_1:
            case R.id.btn_2:
            case R.id.btn_3:
            case R.id.btn_4:
            case R.id.btn_5:
            case R.id.btn_6:
            case R.id.btn_7:
            case R.id.btn_8:
            case R.id.btn_9:
                textView.setText(text+((Button)v).getText ());
                break;
     }
  }

你可能感兴趣的:(android,studio,android)