我正在创建2个edittexts。当用户按下任何数字时,它会聚焦到下一个Edittext然后用户输入任何数字我将图像更改为edittext,它在三星中作为例外工作,但它在nexus和htc中不起作用,问题出在哪里?当我专注于请求时,调用edittext2 onkeylistener正在工作。这是代码问题吗?
edit_text_1.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
// TODO Auto-generated method stub
System.out.println("count:" + count);
System.out.println("s: " + s.length());
if (count == 0) {
System.out.println("before1");
edit_text_1
.setBackgroundResource(R.drawable.single_dashuse);
} else {
System.out.println("before2");
System.out.println("ed1 value : " + edit_text_1.getText());
edit_text_1
.setBackgroundResource(R.drawable.singledashcircle);
String et1value = edit_text_1.getText().toString();
System.out.println("et1 value: " + et1value);
}
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
System.out.println("before");
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
System.out.println("s in aftertext: " + s.length());
System.out.println("afterTextChanged in 1");
if (s.length() != 0) {
System.out.println("before3");
edit_text_1
.setBackgroundResource(R.drawable.singledashcircle);
edit_text_2.requestFocus();
}
}
});
// edit_text_2.setOnClickListener(this);
edit_text_2.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
// TODO Auto-generated method stub
if (count == 0) {
System.out.println("count in side");
edit_text_2
.setBackgroundResource(R.drawable.single_dashuse);
edit_text_1.requestFocus();
} else {
System.out.println("count out side");
edit_text_2
.setBackgroundResource(R.drawable.singledashcircle);
}
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
if (s.length() != 0) {
System.out.println("s in aftertext: " + s.length());
System.out.println("afterTextChanged in 12");
edit_text_2
.setBackgroundResource(R.drawable.singledashcircle);
edit_text_3.requestFocus();
}
}
});
edit_text_2.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
System.out.println("on back pressed");
switch (keyCode) {
case KeyEvent.KEYCODE_DEL:
if (!isRemovable) {
isRemovable = true;
// user pressed the "BACK" key. Append "_back" to the
// text
System.out.println("back presed editext2");
edit_text_1
.setBackgroundResource(R.drawable.single_dashuse);
String v1 = "";
edit_text_1.setText(v1);
edit_text_1.requestFocus();
} else {
System.out.println("back presed editext2 else");
isRemovable = false;
}
return true;
}
return true;
}
});