Edittext由于setOnKeyListener而未输入数字输入

时间:2013-03-27 21:47:20

标签: android android-edittext

我有一个EditText,它接受​​字母和不同符号的输入,但不是数字。此外,我已在EditText上设置setOnKeyListener以按Enter键关闭虚拟键盘。观察并发现由于下面的代码

,它未能获取数字输入

按Enter键后将虚拟键盘设置为隐藏的代码

durOnTreadmill.setOnKeyListener(new OnKeyListener() {
    public boolean onKey(View v, int keyCode, KeyEvent event) 
    {
        if (keyCode == KeyEvent.KEYCODE_ENTER) 
        { 
                InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
                imm.hideSoftInputFromWindow(durOnTreadmill.getWindowToken(), 0);
        }
        return true;
    }

});

我的XML格式文档

 <EditText
        android:id="@+id/durOnTreadmill"
        android:layout_width="129dp"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:layout_marginRight="32dp"
        android:inputType="text"
        android:hint="hh:mm:ss" />

我哪里错了?

2 个答案:

答案 0 :(得分:2)

在此处复制我的评论:

  

如果您正在处理输入,则只应从onKey返回true。   即,在if块内移动返回true并返回false   否则。

答案 1 :(得分:1)

android:imeOptions="actionDone"
编辑文本中的

当用户点击进入时,xml将关闭键盘 并且你说它除了数字之外你输入设置为“text”

走出这条路:

android:inputType="text"