我有三个EditText,我想要连接前两个EditText字段中的字符串,并显示在第三个EditText字段中.在第二个字段输入字符串后,它会自动连接并设置在第三个EditText中.
EditText text1 = (EditText) findViewById(R.id.text1);
mtext1=text1.getText.toString();
EditText text2 = (EditText) findViewById(R.id.text2);
mtext2 = text2.getText.toString();
mtext3=mtext1.concat().mtext2;
Edit text3 = (EditText) findViewById(R.id.text3);
text3 = setText(mtext3.toString());
Run Code Online (Sandbox Code Playgroud)
我写了上面的代码.但是我在第三个EditText中没有结果.请给出我在我的程序中实现的解决方案
Rob*_*ond 23
这应该工作.确保您不在TextChanged侦听器中编辑text2,因为之后将再次调用afterTextChanged.
final EditText text1 = (EditText) findViewById(R.id.text1);
final EditText text2 = (EditText) findViewById(R.id.text2);
final EditText text3 = (EditText) findViewById(R.id.text3);
text2.addTextChangedListener(new TextWatcher() {
void afterTextChanged(Editable s) {
text3.setText(text1.getText().toString() + text2.getText().toString());
};
});
Run Code Online (Sandbox Code Playgroud)
如果要检测两个EditText字段何时更改,则需要在每个字段上使用addTextChangedListener().以下内容可以放在onCreate()方法中:
final EditText text1 = (EditText) findViewById(R.id.text1);
final EditText text2 = (EditText) findViewById(R.id.text2);
final EditText text3 = (EditText) findViewById(R.id.text3);
TextWatcher watcher = new TextWatcher() {
void afterTextChanged(Editable s) {
text3.setText(text1.getText() + text2.getText());
};
});
text1.addTextChangedListener(watcher);
text2.addTextChangedListener(watcher);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
70025 次 |
| 最近记录: |