Android.application des Fragments vs android.de soutien.v4.application à l'aide de ViewPager?
J'ai une question concernant le Soutien Android Bibliothèques, des Fragments, et comme un exemple spécifique, le ViewPager
classe. Mon intention est de créer une application avec des fonctionnalités similaires à celles de l'échantillon fourni sur l'Android Developer site web (http://developer.android.com/training/animation/screen-slide.html ou http://developer.android.com/training/implementing-navigation/lateral.html). La recherche dans leur code, j'ai remarqué qu'ils utilisent le android.support.v4.app
de la bibliothèque, qui, à partir de ma recherche est le seul moyen d'accéder à la ViewPager
classe.
Dans ma situation, je n'ai aucun intérêt à compatibilité descendante. L'API minimum de niveau est de 14 (Ice Cream Sandwich) et la cible build est 4.2 Jelly Bean. Dans sa forme la plus simple, mon app effectue exactement comme le fait la deuxième démo, j'ai fait un lien sur l'Android dev site de glisser entre les trois onglets de contenu dans chaque.
Tous les articles/messages/réponses que j'ai lu semble fortement en faveur de l' v4 bibliothèque de prise en charge. Maintenant, pour mon, quoique de longue haleine, question(s):
-
Quelle est la meilleure façon de structurer mon application en utilisant
android.support.v4.app
, et ainsi à l'aide de SupportFragments, ou d'utiliser les Fragments fournis dansandroid.app
- et pourquoi? -
Si des Fragments de
android.app
sont la voie à suivre, ce qui est la façon optimale de l'approcheViewPagers
? -
Si SupportFragments sont les mieux adaptées à la tâche, je dirais qu'ils possèdent les mêmes fonctionnalités que les autres - alors, quel est le but de l'avoir à l'intérieur d'
android.app
?
J'espère que quelqu'un avec une compréhension plus claire peut me donner un peu de précisions parce que je suis ahuri...
- vous ne pouvez pas utiliser
Fragments
si vous utilisez leViewPager
vous avez besoin d'utiliser la bibliothèque de prise en chargeSupportFragment
SupportFragment
n'est pas une classe dans le kit SDK d'Android...- Désolé pour la confusion, je ne veux pas dire un littéral de classe
SupportFragment
, je suis simplement en se référant à laFragment
classe disponible dansandroid.support.v4.app
. - de toute façon vous ne pouvez utiliser le fragment de classe dans la bibliothèque de prise en charge
- Merci, mais ce n'est pas vraiment répondre à la question. Je suis à la recherche de plus pour un pourquoi, car je sais déjà il n'y a pas de
ViewPager
dansandroid.app
. - parce que ViewPager usages les tout à partir de la bibliothèque de prise en charge c'est pourquoi ie.
FragmentPagerAdapter
. vous ne pouvez pas mélanger les classes de la bibliothèque de prise en charge régulière avec les SDK - Très, très, très bonne question, je suis en train de faire la même chose et de l'envelopper ma tête autour de la question: Pourquoi ai-je besoin pour passer à l'appui de fragment si mon application s'exécute 4.0 et ci-dessus afin d'obtenir ViewPager de course??!?! Et maintenant vient un autre clou dans ma tête: v13...jeezz.
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser
ViewPager
natif de fragments provenant de laandroid.app
paquet avec les cartes de l' android.de soutien.v13.app paquet. Vous devez utiliser la v13 support de pot pour que.Il existe deux versions des cartes qui fonctionnent avec
ViewPager
, celles de l'v4
colis sont conçus pour être utilisés avec le soutien des fragments, ceuxv13
natif de fragments.La raison pour laquelle il y a maintenant deux fragment implémentations est historique: les Fragments de la
android.app
package a été introduite avec Android 3 pour les tablettes uniquement et le soutien de la bibliothèque a été créé pour apporter des fragments de téléphones exécutant des versions antérieures. Sur Android 4 vous avez à la fois.De ma propre expérience, je vous conseille d'utiliser le soutien des fragments, même lors du développement d'Android 4. Voici quelques raisons: Fragment ou de Soutien Fragment?
android.app
n'a pasFragmentPagerAdapter
alors il devient impossible d'utiliser viewpager avec android.app.Fragment? toute idée ici? est-il une option pour l'ancien point de vue pager? Pour dynamiquement fragment de crochet pour les ongletsandroid.support.v4.app
paquet fonctionne avec le soutien des fragments, l'autre dansandroid.support.v13.app
avec "normale" fragmentsandroid.app.Fragment
classe est obsolète depuis Android P (lien), de sorte que seuleandroid.support.v4.app.Fragment
devrait être utilisé partout.Si vous allez à la cible API 11+, vous n'aurez pas besoin de l'appui de la bibliothèque [et votre apk seront plus petits, au moins).
Si vous voulez soutenir quelque chose avant de Android 3.x, vous aurez besoin de la bibliothèque de prise en charge.
Est-ce que vous demandez?
ViewPager
fonctionnalité, et une explication de pourquoi cette solution est la meilleure.