为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

哔哔one 2023-06-14 16:18:40
我有 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:            }        }
查看完整描述

2 回答

?
达令说

TA贡献1821条经验 获得超6个赞

我认为你需要做的是学习如何操作字符串 

你应该在第二个听众中做的是连接新号码

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")

         }

         }

     ...


查看完整回答
反对 回复 2023-06-14
?
PIPIONE

TA贡献1829条经验 获得超9个赞

setText(...) 重写 TextView 中的文本。要在末尾添加文本,请使用 append(...)


例如:


TextView textView = findViewById<TextView>(R.id.some_text_view);

textView.setText("1"); //text contain 1

textView.setText("2"); //text contain 2

textView.setText("3"); //text contain 3

textView.append("1"); //text contain 31

textView.append("2"); //text contain 312

...


查看完整回答
反对 回复 2023-06-14
  • 2 回答
  • 0 关注
  • 135 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信