尝试将值输入到选定的编辑文本

gopyfrb3  于 2021-08-25  发布在  Java
关注(0)|答案(1)|浏览(268)

我最近开始使用android studio。所以我遇到了一个问题,就像这样:我有2个按钮和5个编辑文本。使用onclicklistener,我试图向EditText输入值。但问题是我只能制作一个edittext来听我按下的按钮。如果我对5个EditText使用不同的onclicklistener,则只有最后一个对按钮做出响应(这是显而易见的)。我想这样做:无论我选择什么etittext,当我按下一个按钮时,该值将只反映在该按钮上。但它不起作用。我希望像if语句一样,如果我选择一个特定的edittext,onclicklistener将对此做出响应。
我创建了以下方法。

private void selectBox(EditText e, Button b1, Button b2) {
    View.OnClickListener listener = new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Button b = (Button) v;
            e.append(b.getText().toString());
        }
    };
    b1.setOnClickListener(listener);
    b2.setOnClickListener(listener);
}

然后在oncreate方法中需要类似的内容:

if(editText1 is selecte`enter code here`d in the emulator) {
 selectBox(editText1, button1, button2);
 } else if(editText2 is selected in the emulator) {
 selectBox(editText2, button1, button2);
 } ......

我将如何进行?谢谢

hsgswve4

hsgswve41#

干得好!

fun handleText() {
        var flag: Int
        txtBox1.setOnClickListener {
            flag = 1
            if (flag == 1) {
                button.setOnClickListener {
                    txtBox1.text = "add text to field 1"
                }
            }
        }
        txtBox2.setOnClickListener {
            flag = 2
            if (flag == 2) {
                button.setOnClickListener {
                    txtBox2.text = "add text to field 2"
                }
            }
        }
    }

波斯特:我不像我喜欢Kotlin那样喜欢java。这就是为什么你的问题是java,我的答案是kotlin。

相关问题