Pat*_*ick 3 android autocomplete
我刚刚使用在线Web服务实现了文本字段的自动完成,基于Stackoverflow上的这个答案: ArrayAdapter在AutoCompleteTextAdapter中从Webservice后期更新
使用一个ArrayAdapter<User> implements Filterable,我已经设法自动完成建议我按预期输入.
User是一个Java Bean,其中包含建议(年龄,名称,...)中显示的信息.
当我选择建议时,自动填充字段将填充"错误"数据 - 使用该toString()方法,而不是bean的"name"属性.
我的问题是:我可以覆盖(在适配器中)一个方法,它允许我指定如何转换bean,以便为AutoCompleteTextView返回正确的属性? (理想情况下,不应更改User.toString())
谢谢!
不需要子类化AutoCompleteTextView并覆盖该convertSelectionToString方法.通过覆盖convertResultToString自定义Filter中的方法(已经是子类),可以实现同样的目的ArrayAdapter.
我有同样的问题:我ArrayAdapter的自定义对象的toString()实现不是我可以控制的.我实现了这样的方法:
// In custom Filter implementation
@Override
public CharSequence convertResultToString(Object result) {
if(result instanceof MyCustomClass) {
return ((MyCustomClass) result).getAttribute("name");
}
return super.convertResultToString(result);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2010 次 |
| 最近记录: |