[英]Using SearchableSpinner with Custom Adapter in Android
我在我的 Android 项目和 SearchableSpinner 中使用 SearchableSpinner,我使用了两个 textview,所以我制作了一个自定义适配器。 当我单击 SearchableSpinner 时,数据显示不正确。
这是我的自定义适配器代码。 我在我的自定义适配器中使用 getView 和 getDropDownview。
private ArrayList<University> universityList;
private Activity context;
public UniversityListAdapterForUploadPage(ArrayList<University> universityList, Activity context){
super(context,R.layout.university_list_row_for_spinner,universityList);
this.universityList = universityList;
this.context = context;
}
@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
LayoutInflater layoutInflater = context.getLayoutInflater();
View customView = layoutInflater.inflate(R.layout.university_list_row_for_spinner,null,true);
TextView universityIDText = customView.findViewById(R.id.universityID_textView_for_spinner);
TextView universityNameText = customView.findViewById(R.id.university_name_textView_for_spinner);
University university = universityList.get(position);
universityIDText.setText(university.getUniversityID()+"");
universityNameText.setText(university.getUniversityName());
return customView;
}
@Override
public View getDropDownView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {
LayoutInflater layoutInflater = context.getLayoutInflater();
View customView = layoutInflater.inflate(R.layout.university_list_row_for_spinner,null,true);
TextView universityIDText = customView.findViewById(R.id.universityID_textView_for_spinner);
TextView universityNameText = customView.findViewById(R.id.university_name_textView_for_spinner);
University university = universityList.get(position);
universityIDText.setText(university.getUniversityID()+"");
universityNameText.setText(university.getUniversityName());
return customView;
}
我需要帮助。
universityIDText.setText(university.getUniversityID()+"");
universityNameText.setText(university.getUniversityName());
您没有通过这两个调用传递String
。 您正在传递一个 java 对象 ID
@Override toString() 在您的模型中将此添加到您的模型类中.. 希望它会有所帮助..
public String toString(){
return universityName;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.