2012-12-03 5 views
1

Quelle est la meilleure façon d'utiliser les adaptateurs sur Android? Nous pouvons l'utiliser pour plusieurs opérations personnalisées. En utilisant l'adaptateur, nous inclurons des méthodes pré-implémentées. Quand devrais-je utiliser ces méthodes? Comment pouvons-nous améliorer les performances de nos applications en utilisant les méthodes implémentées par l'adaptateur?Quelle est la meilleure façon d'utiliser les adaptateurs sur Android?

public int getCount() { 
     // TODO Auto-generated method stub 
     return country.length; 
    } 

    public Object getItem(int position) { 
     // TODO Auto-generated method stub 
     return position; 
    } 

    public long getItemId(int position) { 
     // TODO Auto-generated method stub 
     return position; 
    } 
} 
+0

dans Android disponible plus de l'adaptateur sorcière adaptateur veulent utiliser? –

+0

Il est préférable de connaître tous les adaptateurs dans chaque One by One !. – gowri

+0

Qu'avez-vous essayé? Quels problèmes avez-vous rencontrés? Soyez plus précis, ce qui aidera les gens à vous aider. – neevek

Répondre

1

BaseAdapter est un excellent choix pour utiliser simplement ListView ou GridView. Mais si vous voulez obtenir des données de la base de données, un CursorAdapter est bien plus adapté pour cela, même si le doc dit que c'est pour ListView. Donc, un SimpleCursorAdapter serait l'autre type que vous utiliseriez si vous voulez utiliser à la fois ListView et GridView pour montrer les données que vous obtenez d'une base de données. Mais bien sûr, la connaissance de votre implémentation m'aiderait à mieux vous donner le meilleur choix. Je devrais ajouter aussi puisque je l'ai vu sur l'un des commentaires, ArrayAdapter est fondamentalement un BaseAdapter, mais la différence étant qu'il prend des tableaux d'objets arbitraires un.k.a mieux approprié pour des arrangements immédiatement hors de la boîte.

+1

Merci, et pouvez-vous me partager des liens parfaits pour ces tutoriels? – gowri

+1

Pas de problème. Je ne peux pas jusqu'à ce que je sache exactement ce dont vous avez besoin. Sinon, je ferais beaucoup du travail que vous devriez faire en termes de recherche. : P – Andy

0

getCount() est un must. Il indique à ListView, GridView ou etc. combien d'éléments afficher. getItem() et getItemId() dans de nombreux cas (si vous implémentez getView() avec votre propre code) sont en fait optionnels, ce ne sont que des méthodes auxiliaires. Les méthodes sont basiques pour un adaptateur, cela n'aide pas à améliorer les performances. Je pense que les performances de l'implémentation de getView() sont les meilleures.

2

Regardez sur cet exemple échantillon et la link

public class GridDemo extends Activity implements AdapterView.OnItemClickListener { 
    private TextView selection; 
    private static final String[] items={"lorem", "ipsum", "dolor", "sit", "amet", "consectetuer", "adipiscing", "elit", "morbi", "vel", "ligula", "vitae", "arcu", "aliquet", "mollis", "etiam", "vel", "erat", "placerat", "ante", "porttitor", "sodales", "pellentesque", "augue", "purus"}; 

    public void onCreate(Bundle icicle) { 
     super.onCreate(icicle); 
     setContentView(R.layout.main); 
     selection=(TextView)findViewById(R.id.selection); 
     GridView g=(GridView) findViewById(R.id.grid); 
     g.setAdapter(new ArrayAdapter<String>(this, R.layout.cell, items)); 
     g.setOnItemClickListener(this); 
    } 

    public void onItemClick(AdapterView<?> parent, View v, int position, long id) { 
     selection.setText(items[position]); 
    } 
} 

Vous pouvez avoir une idée de ce adaptateurs ..

Questions connexes