0

RelativeLayout我在里面有一个 AutoCompleteTextView FrameLayout。我想使用声明如下的类填充完成列表:

public class AutoCompleteAdapter extends ArrayAdapter<String> implements Filterable {
 ...
 public AutoCompleteAdapter(Context context, int textViewResourceId) {
    super(context, textViewResourceId);
    data = new ArrayList<String>();
 }
 ...
}

我按如下方式连接了适配器:

AutoCompleteTextView tv = (AutoCompleteTextView) v.findViewById(R.id.editTextClient);
    AutoCompleteAdapter adapter = new AutoCompleteAdapter(getActivity(), R.layout.fragment_main_right);
    tv.setAdapter(adapter);

其中 R.layout.fragment_main_right 是FrameLayout上面提到的封闭。当我开始输入文本时,我收到ClassCastException以下消息:"android.widget.FrameLayout cannot be cast to android.widget.TextView". 我理解这意味着ArrayAdapter构造函数中的第二个参数应该是从 a 派生的东西的 id TextView。所有示例都将此参数显示为封闭布局。有人可以解决我的困惑吗?

4

1 回答 1

0

对于适配器构造函数中的第二个参数,请改为传入 android.R.layout.simple_dropdown_item_1line 或 android.R.layout.simple_list_item_1。

给出的提示是它需要一个参数名称的文本视图:textViewResoureceId。

于 2013-11-05T18:13:02.627 回答