37 votes

Quand utiliser CursorJoiner / MatrixCursor / MergeCursor?

Je suis d'exploration de différentes façons pour obtenir des données élégamment à partir de deux ou plusieurs tables jointes.

Je crois MergeCursor, (Android Developer Guide) semble impliquer que pourrait (par exemple) remplacer un équivalent SQL UNION par la concaténation de deux requêtes (ou l'ajout de vues individuellement en tant que lignes, etc) - donc, pas ce que je veux.

Mais je suis à une perte quant à ce qu'est exactement CursorJoiner et MatrixCursor sont pour, ou la façon de les utiliser. J'ai regardé le source pour eux et (comme d'habitude), il ne signifie rien pour moi! Les exemples que j'ai trouvé de l'utilisation n'ai pas bien expliquer ce qu'est l'effet qui en résulte a été. J'apprécierais vraiment une bonne description, et le contexte, elles pourraient être utilisées dans.

72voto

CommonsWare Points 402670

MergeCursor, comme vous l'indiquez, est conçu pour concaténer deux ensembles de données "à la verticale", ajout de plusieurs lignes.

CursorJoiner est conçu pour concaténer deux ensembles de données "à l'horizontale", en ajoutant plus de colonnes. Vous pouvez considérer cela comme étant assimilable à la mise en œuvre d'un simple, SQL JOIN.

MatrixCursor vous permet de construire quelque chose qui met en œuvre l' Cursor interface de données pures, que vous versez dans un deux dimensions du modèle de données.

AbstractCursor permet d'envelopper votre propre ensemble de données en Cursor interface, en substituant les méthodes qui sont nécessaires.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X