은 직접 것 아마 CRASH하여 응용 프로그램을 구현. 당신은 당신이 그들에 입력하기 전에 글고 치기에 플래그 변수를
public class MainActivity extends Activity {
EditText et1, et2;
String flag = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et1 = (EditText) findViewById(R.id.editText1);
et2 = (EditText) findViewById(R.id.editText2);
// Here update the flag variable to keep track which text view is in use
et1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
flag = "ET1";
}
});
// Here update the flag variable to keep track which text view is in use
et2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
flag = "ET2";
}
});
et1.addTextChangedListener(new TextWatcher() {
public void afterTextChanged(Editable s) {
}
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
public void onTextChanged(CharSequence s, int start, int before,
int count) {
// Set the value of editText2 value here if only flag contains
// ET1
// This will prevent changes if ET2 is being used
if (flag.equals("ET1")) {
et2.setText(s);
}
}
});
et2.addTextChangedListener(new TextWatcher() {
public void afterTextChanged(Editable s) {
}
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
public void onTextChanged(CharSequence s, int start, int before,
int count) {
// Set the value of editText1 value here only if flag equals ET2
if (flag.equals("ET2")) {
et1.setText(s);
}
}
});
}
}
다음 실행 더블 클릭을 사용하여 주위에 작업을 할 수 있습니다. 적절한 상황에서 편집 텍스트를 활성화 및 비활성화하여 한 번 클릭으로 동일한 결과를 얻을 수 있으므로이를 향상시킬 수 있습니다.
코드에 대한 질문이 있으면 아래에서 의견을 말하십시오.
고마워하지만 사용하지 않는 체크 상자 사촌 숫자 키 스트로크 감소해야합니다 ... 거기에 edittext에 대한 입력을 감지하는 방법은 가상 키보드에서 무엇입니까? – Sham
이 경우 TextWatcher가 도움이 될 것입니다. 그리고 당신이'키 스트로크의 수를 줄여야 함을 의미하는 것에 대해 더 설명 할 수 있습니까? – codePG
내 앱에는 5 개의 edittext와 다른 위젯이 없어야합니다 ... 키 입력이 가상에서 발생했을 때 외부에서 수행 할 수 없습니다. 키를 누른 다음 watcher 함수를 호출하여 textview로 작동합니까? – Sham