根据问题和答案发布如何自动移动到android中的下一个编辑文本,我使用代码移动到下一个编辑框.
et1.addTextChangedListener(new TextWatcher() {
public void onTextChanged(CharSequence s, int start,int before, int count)
{
// TODO Auto-generated method stub
if(et1.getText().toString().length()==size) //size as per your requirement
{
et2.requestFocus();
}
}
public void beforeTextChanged(CharSequence s, int start,
int count, int after) {
// TODO Auto-generated method stub
}
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
});
Run Code Online (Sandbox Code Playgroud)
我面临的问题是,如果我输入错误,那么即使用户明确请求焦点,由于文本观察器中的代码,文本框也会移动到下一个.我有什么办法可以防止这种情况发生吗?
ars*_*shu 33
可能会很晚但我有一个更容易应用的解决方案.只需将此代码添加到layout.xml文件中的edittext字段即可.将此添加到要显示下一个按钮而不是完成按钮的 edittext .所以它将指向下一个Edittext字段.
android:imeOptions="actionNext"
Run Code Online (Sandbox Code Playgroud)
小智 15
如果你想在下一个EditText上关注输入按下,你可以使用XML代码中的这些选项来关注下一个EditText:
选项1:
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:imeOptions="actionNext"
android:singleLine="true"/>
Run Code Online (Sandbox Code Playgroud)
选项2:
<EditText
android:id="@+id/et1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:singleLine="true"
android:nextFocusForward="@+id/et2"/>
<EditText
android:id="@+id/et2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:singleLine="true"/>
Run Code Online (Sandbox Code Playgroud)
Hir*_*ral 10
您可以检查为1st EditText按下的键,如果是"Enter"键,则将焦点移动到下一个EditText.
这可能对您有所帮助:KeyCode_Enter到下一个edittext
| 归档时间: |
|
| 查看次数: |
49316 次 |
| 最近记录: |