EditText最小长度&启动新活动

时间:2011-10-23 21:15:14

标签: android android-edittext

我对Android中的EditText函数有几个疑问。

首先,是否可以在EditText字段中设置最小字符数?我知道有一个

android:maxLength="*"

然而由于某种原因你不能拥有

android:minLength="*"

另外,我想知道在将数据输入EditText字段时按下键盘上的回车键后是否可以启动新活动?如果是这样,有人可以告诉我怎么做?

感谢您就以下任何一个问题提供的任何帮助:)

1 个答案:

答案 0 :(得分:5)

要回复编辑字段中的回车键,并通知用户他们是否输入了足够的文字:

EditText myEdit = (EditText) findViewById(R.id.myedittext);
    myEdit.setOnKeyListener(new OnKeyListener() {
        public boolean onKey(View v, int keyCode, KeyEvent event) {
            if ((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_ENTER)) {
                if (myEdit.getText().length() < minLength) {
                    Toast.makeText(CurrentActivity.this, "Not enough characters", Toast.LENGTH_SHORT);
                } else {
                    startActivity(new Intent(CurrentActivity.this, ActivityToLaunch.class);
                }
                return true;
            }
            return false;
        }
    });

在编辑字段时,没有简单的方法强制最小长度。您将检查输入的每个字符的长度,然后在用户尝试删除最小值时删除键击。它非常混乱,这就是没有内置方法的原因。