在我的应用中,我有3 editTexts
喜欢这个
____ ____ ____
让我们从左到右打电话给他们et1, et2, et3
现在当用户在et3
上并且他按下键盘(提供et3
为空)时,我希望焦点转移到左边最近的editText {{1} } 这里。我已经尝试了很长时间但是找不到任何解决这个问题的方法,这个问题起初对我来说是微不足道的。
问题是,到目前为止,我发现捕获键盘背景事件的唯一方法是制作一个自定义的editText,如this回答所述,其代码如下所示。
et2
使用这种方式,我可以清除当前public class EditTextV2 extends EditText
{
public EditTextV2( Context context )
{
super( context );
}
public EditTextV2( Context context, AttributeSet attribute_set )
{
super( context, attribute_set );
}
public EditTextV2( Context context, AttributeSet attribute_set, int def_style_attribute )
{
super( context, attribute_set, def_style_attribute );
}
@Override
public boolean onKeyPreIme( int key_code, KeyEvent event )
{
if ( event.getKeyCode() == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_UP )
this.clearFocus();
return super.onKeyPreIme( key_code, event );
}
}
的焦点,但如何将焦点移至左editText
? android上的默认行为是,在我的情况下,它将焦点移到最左侧editText
,即editText
。有办法吗?或者还有另一种方式吗?任何帮助,将不胜感激。谢谢!
答案 0 :(得分:0)
实际上强制编辑文本的焦点你只需在xml中将其设置为focusable
然后放入这行代码
et2.requestFocus();
应该工作