0

我已经使用自定义 ArrayAdapter 实现了 AutoCompleteTextView。一切正常,除非我从列表中选择一个项目。当我选择该项目时,它会将值从 AutoCompleteTextView 更改为:

com.android.tests.entity.MyObject@41a0387

我无法覆盖 toString() 方法,因此我需要将其转换为 android 代码中的友好值。

我怎样才能转换它?我可以选择一项并将朋友值放入 AutoCompleteTextView 的文本值中吗?

提前致谢。

编辑:

 @Override
public View getView(int position, View convertView, ViewGroup parent) {
    View row = convertView;
    PassionHolder holder = null;
    if (row == null) {
        LayoutInflater inflater = ((Activity) context).getLayoutInflater();
        row = inflater.inflate(layoutResourceId, parent, false);
        holder = new InterestHolder();
        holder.txtTitle = (TextView) row.findViewById(R.id.txtTitle);
        row.setTag(holder);
    } else {
        holder = (PassionHolder) row.getTag();
    }
    Passion passion = passions.get(position);
    holder.txtTitle.setText(passion.getName());
    return row;
}
4

1 回答 1

0

解决方案:覆盖方法convertResultToString(Object resultValue)

@Override
public CharSequence convertResultToString(Object resultValue) {
    Passio result = (Passion) resultValue;
    return result.getName();
}
于 2013-11-01T15:00:41.460 回答