我正在尝试从自定义数组适配器填充微调器。一切正常,除非您单击微调器选择一个新值,它会为每个项目显示一长串代码。但是,单击长长的代码行后会显示正确的名称并给出正确的值。
它的作用示例
https://i.stack.imgur.com/AhUqw.png
自定义阵列适配器
private void populateCompanyList()
{
ArrayAdapter<CompanyClass> Adapter = new OnlyListAdapter();
Company.setAdapter(Adapter);
}
private class OnlyListAdapter extends ArrayAdapter<CompanyClass>
{
public OnlyListAdapter() {
super(getActivity(), R.layout.spinner_item, listCompany);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
//Make sure we have a view to work with
View itemView = convertView;
if (itemView == null)
itemView = getActivity().getLayoutInflater().inflate(R.layout.spinner_item, parent, false);
CompanyClass currentCompany = listCompany.get(position);
TextView Name = (TextView) itemView.findViewById(R.id.txtName);
Name.setText(currentCompany.getName());
Toast.makeText(getActivity(), currentCompany.getName(), Toast.LENGTH_LONG).show();
return itemView;
}
}
公共类公司类{
String ID;
String Name;
public CompanyClass(String ID, String Name)
{
this.ID=ID;
this.Name=Name;
}
public String getID() {
return ID;
}
public String getName() {
return Name;
}
}