2012-03-31 4 views
40

Ich habe ein bisschen nach einem Pager für Fragment gesucht, ich entwickle auf ICS API.Hat die Android ICS-API eine native Entsprechung zur ViewPager-Support-Bibliothek?

Ich weiß über ViewPager und alle Support-Bibliotheken für frühere Version, aber ich verstehe nicht, warum ich eine Support-Bibliothek verwenden sollte, die Tatsache, dass ich die neueste Version der API verwenden und keine frühere Version zu unterstützen planen .

Muss ich den "ViewPager" selbst schreiben oder gibt es etwas, das ich in der API nicht gesehen habe?

Antwort

49

Hat die Android ICS-API eine native Entsprechung zur ViewPager-Support-Bibliothek?

Nr

Ich weiß über ViewPager und alle Unterstützung Libs für frühere Version aber ich bekomme nicht, warum ich eine Support-Bibliothek betrachten verwenden sollte die Tatsache, dass ich die neueste Version von der Verwendung api und planen nicht, frühere Version zu unterstützen.

Das Android Support-Paket ist nicht nur für Backports neuerer APIs gedacht. Es ist auch für andere Klassen, die dem SDK aus beliebigem Grund nicht hinzugefügt werden, wie ViewPager und seine unterstützenden Klassen.

Muss ich den "ViewPager" selbst schreiben oder gibt es etwas, das ich in der API nicht gesehen habe?

Sie können gerne Ihre eigene Implementierung einer Ansichtspaging-Komponente schreiben. Erfahrene Programmierer würden das im Android-Support-Paket verwenden, da es bereits geschrieben und (größtenteils) debuggt wurde.

UPDATE: Beachten Sie, dass ViewPager funktioniert nur mit Seiten in Ordnung, das sind:

  • API Stufe 11+ nativen Fragmente
  • Android Unterstützung zurückportiert Fragmente
  • willkürliche Views

Für Im ersten Fall benötigen Sie die v13 Version der Support-JAR, die enthält v13 Versionen der Klassen FragmentPagerAdapter und FragmentStatePagerAdapter.

+0

das ist genau das ind der Antwort, die ich suchte, danke. Jetzt muss ich verstehen, warum ich immer eine ClassNotFoundException bei der Verwendung von Support-Bibliotheken bekommen habe. – eephyne

+0

@eephyne: Wenn Sie sich in der R17-Version der Tools befinden, stellen Sie sicher, dass sich Ihre JARs in einem libs/'- Verzeichnis in Ihrem Projekt befinden. Die Build-Tools kümmern sich darum, sie zu Ihrem Build-Pfad (Eclipse oder Befehlszeile) hinzuzufügen und die JARs in Ihrem APK zu packen. – CommonsWare

+0

Ich testete es in beide Richtungen, fügte sie manuell mit eclipse hinzu (java build path> füge externe jars hinzu) und indem ich das libs-Verzeichnis erstellte und das jar hineinlegte, das gleiche Ergebnis. Es ist immer, wenn ich versuche, in der Support-Bibliothek auf irgendeine Klasse zuzugreifen (entweder meine App oder meine Support-API-Demos). Ich habe versucht, wie einige sagen, die Support-Bibliotheken an erster Stelle in der Registerkarte "Reihenfolge und Export" in Java Build-Pfad zu setzen. – eephyne

Verwandte Themen