0
我試圖在EditText(inputOne)上設置焦點,但是我的代碼顯示奇怪的行爲。當我按下按鈕時,inputOne獲得焦點,一切都很好。如果我在SoftKeyboard上按下「Enter」鍵,觸發onKeyListener,則inputTwo將保持焦點。在這兩種情況下,「inputOne.requestFocus」返回true。 這是我的代碼:EditText.requestFocus()不能與onKeyListener一起使用
public class EditSeriesActivity extends Activity {
private FlashcardSeries series;
private EditText inputOne;
private EditText inputTwo;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.editseries);
Intent intent = getIntent();
series = intent.getParcelableExtra("EXTRA_MASSAGE");
TextView textView = (TextView) findViewById(R.id.nameseries);
textView.setText(series.getName());
inputOne = (EditText) findViewById(R.id.side1);
inputTwo = (EditText) findViewById(R.id.side2);
inputTwo.setOnKeyListener(new View.OnKeyListener()
{
public boolean onKey(View v, int keyCode, KeyEvent event)
{
if (event.getAction() == KeyEvent.ACTION_DOWN)
{
switch (keyCode)
{
case KeyEvent.KEYCODE_DPAD_CENTER:
case KeyEvent.KEYCODE_ENTER:
addCardToSeries(v);
break;
default:
break;
}
}
return false;
}
});
}
public void addCardToSeries(View view){
series.addFlashcard(new Flashcard(inputOne.getText().toString(), inputTwo.getText().toString()), this);
inputTwo.setText("");
inputOne.setText("");
inputOne.requestFocus();
}
}
它沒有任何影響。 該按鈕仍然會切換焦點,onKeyListener不會 – Noxicon