假设当用户开始输入EditText
时,自动填充功能会在用户键入20个字符后才会显示?
我已尝试将以下代码放入布局XML文件中,但它不起作用:
android:completionThreshold="20"
我在Java类中也尝试过以下一个,但它也不起作用:
myedittext.setThreshold(20);
// it says 'The method setThreshold(int) is undefined for the type EditText'
编辑:
看来我的问题可能会被误解,所以我想澄清一下:
用户在editText中键入一个单词。你知道在1个字符之后出现自动完成的方式吗?我不希望它出现这么快......我的目的是让它看起来只有在用户键入了一定数量的字符之后......这就是它。
对误解表示道歉。谢谢。
答案 0 :(得分:2)
您使用的是AutoCompleteTextView
而不是常规EditText
吗?这可能是问题所在,因为它是前一个拥有completion threshold。
但是,根据您对问题的最新更新,在用户键入X个字母后,我会立即输入EditText
的输入类型(我从未尝试过)。像这样:
myEditText.addTextChangedListener(new TextWatcher() {
public void onTextChanged(CharSequence s, int start,
int before, int count) {}
public void beforeTextChanged(CharSequence s, int start,
int count, int after) {}
public void afterTextChanged(Editable s) {
String text = myEditText.getText().toString();
int maxChar = 5;
// Suggest words if the word is long enough,
// or prevent suggestions if not log enough
int type = text.length() > maxChar ?
TYPE_TEXT_FLAG_AUTO_CORRECT :
TYPE_TEXT_FLAG_NO_SUGGESTIONS;
myEditText.setInputType(type);
}
});
现在问题是你试着看看是否适合你。