2014-06-26 15 views
27

Wir sind Redesigning unserer Android-App und eine Frage erhebt sich angesichts der bevorstehenden Android L-Plattform mit seinem Material-Stil: Was sind die Möglichkeiten zur Unterstützung älterer Geräte? Wird dieses neue Design für 4.x-Geräte akzeptabel sein?Unterstützung von Android Material Design

+5

Es ist wahrscheinlich zu früh, um diese Art von Fragen zu stellen .. – Egor

+2

Es wird ein SDK für Android L später am 26. sein. Du wirst Zeit haben, es herauszufinden. Wie auch immer, ich rieche eine 100k Besuche Frage – Korcholis

+0

google.com/design dort bereits einige Informationen über Material Design./edit: Für das Web gibt es bereits eine Implementierung in polymer -> polymer-project.org – ternes3

Antwort

22

Nach Android Material Design compatibility docs

Ich werde das Material hier wieder aufzuwärmen Incase die Verbindung nach unten genommen wird, die höchstwahrscheinlich in naher Zukunft sein wird.

für das Material Thema

Das Material Thema ist im Android L Entwickler Preview verfügbar. So konfigurieren Sie Ihre Anwendung das Material Thema auf Geräte laufen den Android-L Developer Preview und ein älteres Thema auf Geräte mit früheren Versionen von Android zu verwenden:

ein Thema definieren, die von einem älteren Thema erbt (wie Holo) in res/values ​​/ styles.xml. Definieren Sie ein Thema mit dem gleichen Namen, das aus dem Material-Design in res/v-v21/styles.xml erbt. Legen Sie dieses Thema als das Thema Ihrer App in der Manifestdatei fest.

Wie für Layouts

Wenn die Layouts, die Sie entsprechend dem Material Design entwerfen Richtlinien verwenden Sie bitte nicht von der neuen XML-Attribute aus dem Android L Developer Preview, werden sie auf früheren Arbeiten Versionen von Android. Andernfalls können Sie alternative Layouts bereitstellen. Sie können auch alternative Layouts angeben, um anzupassen, wie Ihre App auf früheren Android-Versionen aussieht.

Erstellen Sie Ihre Layout-Dateien für die Android L Developer Preview in res/layout-v21/und Ihre alternativen Layout-Dateien für frühere Versionen von Android in res/layout /. Alternative Layouts haben die gleiche Datei Name.

Um Doppelungen des Codes zu vermeiden, definieren Sie Ihre Stile in res/values ​​/ und ändern Sie die Stile in res/v21/v21/für die neuen APIs.

Für UI Widgets

Die RecyclerView und CardView Widgets im Android L Developer Preview Support Library enthalten sind, so sind sie in früheren Versionen von Android mit diesen Einschränkungen verfügbar:

CardView greift auf eine programmatische Schattenimplementierung zurück, die zusätzliche Auffüllung verwendet. CardView schneidet seine untergeordneten Ansichten, die mit abgerundeten Ecken schneiden, nicht ab. Diese Einschränkungen gelten nicht für die Android L Developer Preview .

und schließlich für Animationen

Die folgenden neuen APIs sind nur im Android L Entwickler Vorschau verfügbar:

Aktivität Übergänge, Feedback Berühren, Reveal Animationen, Pfadbasierte Animationen. Um die Kompatibilität mit früheren Versionen von Android zu gewährleisten, überprüfen Sie die Systemversion zur Laufzeit, bevor Sie diese APIs aufrufen, .

2

Die v7 Unterstützung Bibliotheken und über R21 ist folgende wesentlichen Konstruktionsmerkmale:

  • -Material Design-Stile für einige Systeme Widgets, wenn Sie ein die Themen Theme.AppCompat gelten.

  • Farbpaletten-Designattribute in den Theme.AppCompat-Designs.

  • Das RecyclerView-Widget zum Anzeigen von Datensammlungen.
  • Das CardView Widget zum Erstellen von Karten. Die Palette Klasse, um hervorstechende Farben aus Bildern zu extrahieren.

Die folgenden Funktionen sind nur in Android 5.0 (API-Ebene 21) und oben:

  • Aktivität Übergänge

  • Touch-Feedback

  • Animationen Reveal

  • Pfadbasierte Animationen

  • Vector Drawables

  • Drawable Tönung

Daher können Sie einige Drittanbieter-Bibliothek erhältlich für Touch-Feedback verwenden. Und kann benutzerdefinierte Aktivitätsübergangsanimation verwenden. Ich habe benutzerdefinierte Aktivitätsübergangsanimationen erstellt. Sie können meine App auf diesem link finden. Sie können Youtube Video von Devebyte auf benutzerdefinierte Aktivität Übergang finden.

0

Die Supportbibliotheken enthalten viele Komponenten, die das neue Materialdesign verwenden, insbesondere seit der Veröffentlichung der Design Support-Bibliothek. Mit Theme.AppCompat (und ähnlich) als ein erster Schritt werden Sie auf dem Weg sein. Teile in Ihrem build.gradle enthalten sind:

compile 'com.android.support:support-v13:{{VERSION}}' 
compile 'com.android.support:cardview-v7:{{VERSION}}' 
compile 'com.android.support:recyclerview-v7:{{VERSION}}' 
compile 'com.android.support:design:{{VERSION}}' 

für Version 22.2.0 oder höher.

Überprüfen Sie auch AppCompat v21 — Material Design for Pre-Lollipop Devices und Android Design Support Library.

Verwandte Themen