如何在编辑文本上设置单词java(android)

时间:2017-11-08 10:07:50

标签: java android android-edittext

我正在开发一个Android应用程序。所以我在按下按钮时在编辑文本字段中加载一些单词时遇到了麻烦...

例如:我有3个按钮和一个编辑文本字段。所以这些按钮都有唯一的名称,Button_1 =" cat" Button_2 ="吃" Button_3 ="大鼠"

我的问题是这个,

当我逐个点击这些按钮时,按钮值将显示在编辑文本字段上。 当我点击按钮(1,2,3)编辑文本字段显示"猫吃老鼠"

但问题是当我按下Button_1 show" cat",但是当我按下Button_2 show" eat"但删除" cat"字。

这是我的问题。我尝试并尝试了许多方法,但没有任何正确的解决方案来解决这个问题。

如果您对上述事项有任何好的建议,请与我分享。

这是我的代码

   one.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            String name="cat";             
               EditText.setText(name);

        }
    });
two.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            String name="eat";             
               EditText.setText(name);

        }
    });
three.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            String name="rat";             
               EditText.setText(name);

        }
    });

谢谢。

3 个答案:

答案 0 :(得分:2)

您必须将内容与之前的值连接:

final String newText = textView.getText().toString() + 
buttonClicked.getText().toString();
textView.setText(newText);

在您的情况下(更新后):

    final EditText myEditText = ...;

    final View.OnClickListener listener = new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            final String newText = myEditText.getText().toString() + ((Button) view).getText();
            myEditText.setText(newText);
        }
    };

    one.setOnClickListener(listener);
    two.setOnClickListener(listener);
    three.setOnClickListener(listener);

答案 1 :(得分:2)

final StringBuilder builder = new StringBuilder();
one.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
               builder.append(" cat");        
               EditText.setText(builder.toString());

        }
    });
two.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
               builder.append(" eat");        
               EditText.setText(builder.toString());

        }
    });
three.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
               builder.append(" rat");        
               EditText.setText(builder.toString());

        }
    });

答案 2 :(得分:0)

您可以使用以下代码段: EditText editText =(EditText)findViewById(R.id.edit_text_field); editText.setText(editText.getText()。toString()+“string”); 将“string”替换为“cat”或“eat”或“rat”(现有按钮单击中的字符串)。