Home / Android-Entwicklung / Das Android Arsenal – Layouts

Das Android Arsenal – Layouts

­čŽő Erweitert und reduziert die horizontale und vertikale Position eines Layouts nacheinander. Inspiriert von "Viewing Labels" aus dem Trello.

In Ihr Projekt aufnehmen

Gradle

Fügen Sie die folgenden Codes zu Ihrer Stammdatei build.gradle hinzu (nicht zu Ihrer Modul-build.gradle-Datei).

 allprojects 



 {
    Aufbewahrungsorte {
        jcenter ()
    }
} 

Und fügen Sie Ihrem Modul einen Abhängigkeitscode hinzu. build.gradle file.

 dependencies 
 {
    Implementierung  " com.github.skydoves: doublelift: 1.0.0 " 

} 

Verwendung

Fügen Sie folgenden XML-Namespace in Ihre XML-Layoutdatei ein.

 xmlns : app  =  " http://schemas.android.com/apk/res-auto " 

DoubleLiftLayout

Hier ist ein grundlegendes Beispiel für die Implementierung DoubleLiftLayout .

 < com.skydoves.doublelift.DoubleLiftLayout 
 android : layout_width  =  " wrap31" 
 android : layout_height  =  " wrap_content " 
 app : doubleLift_foldedWidth [1945902733]  = " 50dp "  //  legt die Breite beim Zusammenfalten fest. 
 App : doubleLift_foldedHeight  =  10dp  " //  setzt th Die Größe der Höhe beim Zusammenklappen. 
 App : doubleLift_horizontalDuration  =  " 400 "  // legt die Dauer des horizontalen Anhebens fest. [19659019]  App: doubleLift_verticalDuration  =  " 300 "  //  legt die Dauer des vertikalen Hebens fest. 
 App : doubleLift_cornerRadius  =  " 4dp "  //  legt den Eckenradius fest. 
 app : doubleLift_autoExpand  =  19659009] " false "  //  anfangs erweitern oder nicht. 
 app : doubleLift_startOrientation  =  " horizontal > 

 < TextView 
 android : layout_width  =  wrap_content 
 ] android : layout_height  =  wrap_content 
 android : layout_gravity  =  center  19659010]  android : text  =  " feature " 
 android : textColor  =  19659009] " @ color / white_87 " 
 android : textStyle  =  " fett  / 19659018]> 

 //  Etwas komplizierte Ansichten oder Layouts 

 < /  com.skydoves.doublelift.DoubleLiftLayout > 

Mit Builder-Klasse erstellen

Das können wir Erstellen Sie eine Instanz von DoubleLiftLayout mit der Klasse DoubleLiftLayout.Builder.

 val  myDoubleLiftLayout  =  DoubleLiftLayout . 
 Builder ](Kontext)
  .setFoldedWidth ( 200 
)
  .setFoldedHeight ( 100 
)
  .setCornerRadius ( 6 
)
  .setLiftHorizontalDuration ( 400 
)
  .setLiftVerticalDuration ( 200 
)
  .setOnExpandListener {Toast ( " expand: $ it " 
)}
  .build () 

Oder wir können mit dem kotlin-dsl erstellen.

 val  myDoubleLiftLayout  =  doubleLiftLayout ( this 
) {
  setFoldedWidth ( 200 
)
  setFoldedHeight ( 100 
)
  setCornerRadius ( 6 
)
  setLiftHorizontalDuration ( 400 
)
  setLiftVerticalDuration ( 200 
)
  setOnExpandListener {toast ( " expand: $ it " 
)}
} 

Erweitern und reduzieren

Mit den folgenden Methoden können wir erweitern und reduzieren.

 doubleLiftLayout.expand ()  //  Erweitern Sie die Breite und Höhe nacheinander. 

doubleLiftLayout.collapse ()  //  Reduzieren Sie die Größe von Breite und Höhe nacheinander. 

Oder Sie können etwas tun, nachdem Sie mit Lambda expandiert haben.

 doubleLiftLayout.expand {toast ( "  erweitert  "
)}
doubleLiftLayout.collapse {toast ( " zusammengebrochen " )} 

OnExpandListener

Wir können uns das DoubleLiftLayout anhören oder es ist zusammengebrochen77

. doubleLiftLayout.onExpandListener  =  Objekt :  OnExpandListener 
 {
   ├╝berschreiben  Spa├č  aufExpand  ( isExpanded :  Boolean 
) {
    Toast ( " Erweitert: $ it " 



)
  }
}

 //  oder wir können mit einem Lambda-Ausdruck zuhören. 


doubleLiftLayout.setOnExpandListener {
   if 
 (it) {
    Toast ( " erweitert " 
)
  }  else 
 {
    Toast ( " Einsturz " 
)
  } 

DoubleLiftLayout-Attribute

Attribute Typ Standardwert Beschreibung
FoldedWidth Dimension 0 Legt die Breite fest, wenn sie zusammengeklappt ist ] Dimension 0 legt die Höhe fest, wenn diese zusammengeklappt ist.
horizontalDuration Long 500L legt die Dauer des horizontalen Anhebens fest.
verticalDuration Long [19659109109300L legt die Dauer des vertikalen Anhebens fest.
cornerRadius Dimension 4dp legt den Eckenradius fest.
autoExpand Boolean false invkoe expand (Methode) Anfänglich oder nicht.
startOrientation LiftStartOrientation LiftStartOrientation.HORIZONTAL Legt die Startausrichtung für das Heben fest.

Find this library helpful? ÔŁĄ´ŞĆ

Unterstützen Sie es, indem Sie sich Stargazern für dieses Repository anschließen. ԺɴŞĆ Und folge mir für meine nächsten Kreationen! ????












 Copyright 2019 Fallschirme (Jaewoong Eum)

Lizenziert unter der Apache-Lizenz, Version 2.0 (die "Lizenz");
Sie d├╝rfen diese Datei nur in ├ťbereinstimmung mit der Lizenz verwenden.
Eine Kopie der Lizenz erhalten Sie unter

   http://www.apache.org/licenses/LICENSE-2.0

Sofern nicht gesetzlich vorgeschrieben oder schriftlich vereinbart, Software
unter der Lizenz vertrieben wird auf einer "AS IS" -Basis verteilt,
OHNE GARANTIEN ODER BEDINGUNGEN JEGLICHER Art, entweder ausdr├╝cklich oder stillschweigend.
In der Lizenz finden Sie die spezifische Sprache f├╝r die Berechtigungen und
Einschr├Ąnkungen unter der Lizenz. 

.

About AndroidWeltEditor

Check Also

Wie Android-Entwickler Benutzer auf jedem Ger├Ąt erreichen k├Ânnen

Gepostet von Allan Livingston, Produktmanagementdirektor, Chrome OS App Ecosystem Android unterstützt mobile Apps auf Geräten, …

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht ver├Âffentlicht. Erforderliche Felder sind mit * markiert.