猿问

如何使用两组 RadioButtons 在 EditText 中输入文本

我有 2 组单选按钮。我想在btn1stDigitBrown1按下第一组时在显示屏上显示“1”,就像下面的代码一样,当btn2ndDigitBlack0按下第二组时,它还应该在刚刚写的数字旁边显示一个数字EditText,例如,“10”。当第二组的按钮被按下时(例如btn2ndDigitBlack0)在第一组的按钮被按下之前,它应该自动显示在EditText“10”上。现在,当RadioButton按下第二组时,它会重写已经写在EditText. 这是我的代码:


    View.OnClickListener listener1stDigit = new View.OnClickListener() {

        @Override

        public void onClick(View view) {

            switch (view.getId()) {

                case R.id.btn1stDigitBrown1:

                    ((EditText)findViewById(R.id.resistText)).setText("1");

                    break;

                case R.id.btn1stDigitRed2:

                    ((EditText)findViewById(R.id.resistText)).setText("2");

                    break;

                case R.id.btn1stDigitOrange3:

                    ((EditText)findViewById(R.id.resistText)).setText("3");

                    break;

                case R.id.btn1stDigitYellow4:

                    ((EditText)findViewById(R.id.resistText)).setText("4");

                    break;

                case R.id.btn1stDigitGreen5:

                    ((EditText)findViewById(R.id.resistText)).setText("5");

                    break;

                case R.id.btn1stDigitBlue6:

                    ((EditText)findViewById(R.id.resistText)).setText("6");

                    break;

                case R.id.btn1stDigitViolet7:

                    ((EditText)findViewById(R.id.resistText)).setText("7");

                    break;

                case R.id.btn1stDigitGrey8:

                    ((EditText)findViewById(R.id.resistText)).setText("8");

                    break;

                case R.id.btn1stDigitWhite9:

                    ((EditText)findViewById(R.id.resistText)).setText("9");

                    break;

                default:

            }

        }

哔哔one
浏览 136回答 2
2回答

达令说

我认为你需要做的是学习如何操作字符串 你应该在第二个听众中做的是连接新号码switch (view.getId()) {     case R.id.btn2ndDigitBlack0: {         EditText editText = ((EditText)findViewById(R.id.resistText))         String oldString = editText.getText()         if (oldString.length <= 1) {            editText.setText(oldString + "0")         } else {             editText.setText(oldString.substring(0, 1) + "0")         }         }     ...

PIPIONE

setText(...) 重写 TextView 中的文本。要在末尾添加文本,请使用 append(...)例如:TextView textView = findViewById<TextView>(R.id.some_text_view);textView.setText("1"); //text contain 1textView.setText("2"); //text contain 2textView.setText("3"); //text contain 3textView.append("1"); //text contain 31textView.append("2"); //text contain 312...
随时随地看视频慕课网APP

相关分类

Java
我要回答