2010-11-13 7 views
0

Je travaille l'application android, où j'ai besoin d'un Listview qui contient différents types de jeux de vue. Ils doivent être mis à jour dynamiquement. c'est-à-dire, j'ai d'abord une liste de vues, avec un en-tête. Ensuite, lorsque je clique sur le bouton, je dois ajouter un nouvel ensemble de vues avec un en-tête différent. Alors quelqu'un peut-il me le dire. comment réaliser cette liste complexe.Android: Comment créer avance (complexe) Listview et à gérer?

ex. Ma liste ressemble

regarde d'abord comme ce

Pays (en-tête) (Chaque ligne contiennent du texte et de l'image)

  • Inde
  • Australie
  • Amérique

suivant quand je clique sur le bouton, je dois mettre à jour listView comme .... Pays (en-tête) (Chaque ligne contiennent du texte et de l'image)

  • Inde
  • Australie
  • Amérique

monnaies (en-tête) (Chaque ligne contient le bouton textview, progressBar)

  • roupie
  • Australie dollar
  • Dollar

Quelqu'un peut-il me aider à résoudre ce problème? Avec un exemple?

vous Remerciant, Srinivas

Répondre

0

Vous devez définir un adaptateur à votre ListView. L'adaptateur contiendra quelque chose comme un membre d'état. Dans getView() State pourrait être vérifiée et la mise en page correspondante sera gonflée à chaque élément de la liste. Est-ce que cela correspond à vos besoins?

Exemple:

public enum States{ 
    Countries, 
    Currencies 
} 

private States mState; 

public View getView(int position, View convertView, ViewGroup parent) 
{ 
LayoutInflater layoutInflater = LayoutInflater.from(context); 
if(mState == States.Countries) 
    { 
     return layoutInflater.inflate(R.layout.countrie_layout, parent, false); 
    }else if(mState == States.Currencies) 
    { 
     return layoutInflater.inflate(R.layout.currencie_layout, parent, false); 
    } 
} 
+0

Je ne reçois pas, ce membre de l'Etat est exactement? – Srinivas

+0

J'ai ajouté un exemple à ma réponse. Regarde ça. – ackio

+0

Ok je l'ai eu. Laisse-moi essayer. – Srinivas

Questions connexes