Ajout d'une vue de liste à l'intérieur d'un listitem
Je suis en utilisant la liste des fragment avec une liste d'en-tête et le besoin d'ajouter un jeu de la liste à l'intérieur du premier élément de la liste.
Je suis à l'aide d'une liste personnalisée de l'adaptateur pour charger les éléments de la liste. Maintenant pour Élément de la Liste 1 - je besoin d'ajouter une sous-vue sur le dessus de l'élément de liste dans la liste de l'adaptateur. Comment dois-je aller à ce sujet? Je ne sais pas si extensible élément de la liste est ce que j'ai envie de l'utiliser ici.
Ma coutume adaptateur getView ressemble à quelque chose comme ceci:
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder = null;
int type = getItemViewType(position);
if (convertView == null) {
holder = new ViewHolder();
switch (type) {
case TYPE_LIST_ITEM_1:
convertView = mInflater.inflate(R.id.list_item_one, null);
/* add code */
/* add another list adapter? */
break;
case TYPE_LIST_ITEM_OTHERS:
convertView = mInflater.inflate(R.layout.list_item_other, null);
/* add code for below list */
break;
}
convertView.setTag(holder);
}
else {
holder = (ViewHolder)convertView.getTag();
}
return convertView;
}
Ce serait une meilleure façon d'aller à ce sujet, sans perdre la vue d'en-tête qui utilise
myListView.addHeaderView(myHeaderView);
OriginalL'auteur zoya ali | 2013-07-30
Vous devez vous connecter pour publier un commentaire.
Un
ScrollView
dans unScrollView
n'est pas possible sur Android sans bugs majeurs, Google dit de ne pas le faire. Vous pourriez avoir unLinearLayout
à l'intérieur de votre élément de la liste (avec sesorientation
ensemble devertical
) et manuellement utilisation deaddView()
pour ajouter des vues de la LinearLayout qui sera affiché avec la mise en page de l'ensemble de l'orientation.Oui, j'étais à la tête dans cette direction, mais addView() n'a pas fonctionné pour moi dans les fragments/intérieur de la classe. Merci bien.
OriginalL'auteur afollestad
je ne suis pas sûr de comprendre ce que vous essayez de faire , mais si je comprends bien ... :
une listView dans un listView est fortement onu-recommandé par google, car il provoque bizarre de défilement et imprévisible de l'INTERFACE utilisateur pour l'utilisateur.
s'il vous plaît ne pas utiliser une telle chose.
cependant, si il y a juste quelques éléments à l'intérieur, utiliser un conteneur normal sans défilement.
aussi, une alternative à ce que vous faites est expandableListView
avez-vous considéré l'utilisation de 2 écrans ou 2 fragments ? ou peut-être développez l'élément lorsque vous cliquez dessus? comment sur une horizontale listView comme les sous-éléments du conteneur? une listview présente généralement des éléments qui ne font pas beaucoup de la hauteur de l'écran.
J'ai considéré ces options, mais il n'était pas exactement ce dont j'avais besoin.
J'ai en quelque sorte fait, il a travaillé, en peaufinant mes objets passés à l'adaptateur et à l'aide de marginLayoutLeft / marginLayoutRight. Et maintenant, ils fonctionnent comme juste un autre listitem sur que listfragment et l'affichage de la façon dont j'avais besoin. Merci!
attendez, si vous utilisez une listView dans un listView ?
OriginalL'auteur android developer
J'ai réalisé un travail autour en utilisant le code suivant, de le mettre ici:
Lors de la mise à jour de la liste personnalisée de l'adaptateur (ex: myCustomListAdapter) à l'aide de l'adaptateur de base, vous pouvez définir différents méthode pour ajouter un élément de liste et sous-éléments:
Et ensuite utiliser le getView à gonfler les différentes mises en page et l'utilisation de votre objet personnalisé à identifier ce que vous voulez et comment vous voulez afficher. Alors que la liste de l'adaptateur identifier en tant que partie de la vue de liste.
Ici la mise en page qui vous gonfler pour la sous-liste peut être personnalisée à l'aide de layout_marginLeft=20dp et layout_marginRight=20dp
OriginalL'auteur zoya ali