Android:限制用户选择自动完成建议以外的其他内容?

Android:限制用户选择自动完成建议以外的其他内容?,第1张

概述我提供了一个AutoCompleteTextView来向用户显示建议.根据用户选择的项目,我获取项目的ID并在数据库中使用它.现在我的问题是强制用户仅从AutoCompleteTextView进行选择(即用户不应该输入他自己的文本).这是客户要求.这个怎么做?解决方法:这是一个非常简单的解决方案:您可以通过在Aut

我提供了一个autoCompleteTextVIEw来向用户显示建议.根据用户选择的项目,我获取项目的ID并在数据库中使用它.现在我的问题是强制用户仅从autoCompleteTextVIEw进行选择(即用户不应该输入他自己的文本).这是客户要求.这个怎么做?

解决方法:

这是一个非常简单的解决方案:

您可以通过在autoCompleteTextVIEw中设置setonItemClickListener来创建存储所选值的变量.然后,只要用户通过向其添加TextWatcher键入字段,就可以使该值为空.最后,您可以在继续之前验证您的变量是否为null.

String my_var; //keep track!autoCompleteTextVIEw tv = (autoCompleteTextVIEw) layout.findVIEwByID(R.ID.tv);tv.setAdapter(my_adapter);  tv.setonItemClickListener(new AdapterVIEw.OnItemClickListener() {    @OverrIDe    public voID onItemClick(AdapterVIEw<?> parent, VIEw vIEw, int position, long ID) {        my_var = my_adapter.getItem(position).toString();    }});/** * Unset the var whenever the user types. ValIDation will * then fail. This is how we enforce selecting from the List. */tv.addTextChangedListener(new TextWatcher() {    @OverrIDe    public voID beforeTextChanged(CharSequence s, int start, int count, int after) {}    @OverrIDe    public voID onTextChanged(CharSequence s, int start, int before, int count) {        my_var = null;    }    @OverrIDe    public voID afterTextChanged(Editable s) {}});
总结

以上是内存溢出为你收集整理的Android:限制用户选择自动完成建议以外的其他内容?全部内容,希望文章能够帮你解决Android:限制用户选择自动完成建议以外的其他内容?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1098261.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存