==== Mise à jour ====ListView personnalisé avec Spinner
Il y avait une faute de frappe dans le bloc de code, donc vous les gars confondus. Ce que je veux faire est d'obtenir l'id de l'élément de liste de la vue de la liste, qui détient le spinner que je suis en train de cliquer en ce moment.
==== ==== Mise à jour
Je mettre en œuvre une vue sur la liste personnalisée qui a boîte de spinner et du texte pour chaque élément de la liste. Et je veux enregistrer la valeur sélectionnée de spinner en utilisant onItemSelected()
dans l'élément de la liste, mais je n'ai aucune idée de trouver un élément de la liste. Comment puis-je obtenir ceci, quelqu'un peut-il m'aider?
Voici mes codes dans l'adaptateur de liste.
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View listItemView = convertView;
if (listItemView == null) {
listItemView = inflater.inflate(R.layout.listitem, null);
ViewHolder viewHolder = new ViewHolder();
viewHolder.view1 = (Spinner) listItemView.findViewById(R.id.view1);
viewHolder.view2 = (TextView) listItemView.findViewById(R.id.view2);
viewHolder.view1.setFocusable(false);
viewHolder.view2.setFocusable(false);
viewHolder.view1.setAdapter(view1Adapter);
viewHolder.view1.setPrompt("Select");
viewHolder.view1.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
String selectedId = spinnerItemList.get(position).id;
// todo : need to find a way to get list item of list view, which has this spinner.
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
}
});
listItemView.setTag(viewHolder);
}
CustomListItem item = listViewItemList.get(position);
ViewHolder viewHolder = listItemView.getTag();
viewHolder.view1.setSelection(item.view1Value);
viewHolder.view2.setText(String.valueOf(item.view2Value));
return listItemView;
}
pouvez-vous ajouter le code complet de l'adaptateur? –