读取多个屏幕单击并在edittext上显示相同内容

时间:2011-04-12 12:40:05

标签: android

我是Android新手,正在构建一个简单的计算器应用。我想阅读屏幕上的多次点击(即数字)并在edittext中显示相同的内容。

请在按钮的onclicklistener事件中找到下面的代码,直接在edittext中显示数字。使用这段代码,edittext中显示的数字将被覆盖(即没有附加)。例如,当我单击“1”时,它会正确显示,然后当我单击“2”时,它显示为“2”,而不是“12”。我知道我的逻辑在这里是错误的,但我如何才能在edittext中附加字符?

代码:

    button00.setOnClickListener(new Button.OnClickListener(){
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            EditText01.setText("0");
        }
    });

    button01.setOnClickListener(new Button.OnClickListener(){
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            EditText01.setText("1");
        }
    });

    button02.setOnClickListener(new Button.OnClickListener(){
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            EditText01.setText("2");
        }
    });

提前致谢

1 个答案:

答案 0 :(得分:0)

setText()不依赖于之前框中的内容,所以你只需要做一些简单的字符串连接:

String prevText = EditText01.getText().toString();
EditText01.setText(prevText + "2");

由于getText()返回Editable,您必须将其转换为字符串,但在此之后,是的,只需对每个数字执行上述操作。您可以通过使用StringBuilder类进一步优化它,并使用StringBuilder.append()来添加和设置值,但上面应该可以正常工作。