Home / Android-Entwicklung / Das Android Arsenal – Karussells

Das Android Arsenal – Karussells

Dies ist ein erstaunlicher Karten-Schieberegler für die Android-Plattform mit vielen Funktionen und Funktionen, mit denen Sie genau das bekommen, was Sie benötigen.

Komponenten des Karten-Schiebereglers

  1. CardSliderViewPager: Ein benutzerdefinierter ViewPager, der auf RTL ViewPager basiert und RTL unterstützt und eine Seite verwendet Transformator zum Anwenden der Skalierungsaktion wie in GIF gezeigt.
  2. CardSliderIndicator: Benutzerdefiniertes lineares Layout, das Indikatoren als untergeordnete Ansichten enthält.
  3. CardSliderAdapter: Abstrakte Klasse, die erweitert und als Adapter an CardSliderViewPager übergeben werden muss.

Features [19659007] 1- Vorschau der Seiten links und rechts anzeigen.

2- Die Größe der Seiten kann geändert (skaliert) werden, um die Höhe der fokussierten Seite zu erhöhen (siehe GIF).

3- Das Erscheinungsbild von CardView und wird vollständig angepasst ViewPager.

4- Fügen Sie Indikatoren hinzu und passen Sie sie ganz einfach an.

5- RTL-Unterstützung.

Zum Projekt hinzufügen

  1. Fügen Sie sie am Ende der Repositorys in Ihr Stammverzeichnis build.gradle ein {
      Repositories {
        .. .
       maven {url ' https://jitpack.io ' }
      }
     }
  1. Die Abhängigkeit hinzufügen:
 Implementierung  ' com.github.IslamKhSh: CardSlider: {latest_version} ' 

Die neueste Version finden Sie hier

Verwendung

  1. Hinzufügen es zu Ihrem Layout:
  < com 
 .github.islamkhsh.CardSliderViewPager
            android :  layout_width  =  " match_parent " 
 android :  layout_height  =  ] wrap_content  "
 android :  id  = "  @ + id / viewPager  "
 android :  layout_margin_  =  24dp 
 App :  cardSlider_smallScaleFactor  =  0,9 
 Seitenhöhenfaktor links und rechts (1, wenn keine Größenänderung erforderlich ist)
            App :  cardSlider_otherPagesWidth  =  " 24dp " 
  // Breite der angezeigten Teile der linken und rechten Seite
            App :  cardSlider_pageMargin  =  " 12dp " 
  // Rand zwischen den Seiten
            App :  cardSlider_cardCornerRadius  =  " 5dp "  /> // Eckenradius jeder Seite 
  1. CardSliderAdapter-Klasse erweitern [1965577] 19659058] MovieAdapter (Filme : ArrayList < Movie >) : CardSliderAdapter < Movie > Filme) {

         überschreiben Spaß BindView ( Position : Int itemContentView : Anzeigen ] item : Film? ) {
           // TODO-Elementobjekt mit Elementlayoutansicht binden
        }

         überschreiben Spaß getItemContentLayout ( Position : Int ) : Int {
             // TODO gibt das Artikellayout jeder Position zurück
             // Dieses Layout wird als untergeordnetes Element von CardView hinzugefügt
        }
    }

oder Verwendung von Java

 öffentliche  Klasse  MovieAdapter  erweitert  CardSliderAdapter < Movie > 

 {
    
     public  MovieAdapter  ( ArrayList < Movie >  movies 
) {
         super 


 (Filme);
    }
    
     @Override 
 public  void  bindView  ( int  position  view  itemContentView  movie  19659084] Artikel 
) {
       //  TODO-Elementobjekt mit Elementlayoutansicht binden 



    }

     @Override 
 public  int  getItemContentLayout  ( int  position 
) {
         //  TODO gibt das Artikellayout jeder Position zurück 

         //  Dieses Layout wird als untergeordnetes Element von CardView hinzugefügt 


    }
} 
  1. Erstellen Sie ein Elementlayout, um es in getItemContentLayout

  2. Hinzufügen eines Adapters zu CardSliderViewPager

 val  movies  =  ArrayList  < Movie > ().  apply 
 {
   //  Elemente zur Arrayliste hinzufügen 



  }
  
  findViewById < CardSliderViewPager > ( R  .id.viewPager) .adapter  =  MoviesAdapter  (Filme) 

oder mit Java

 ArrayList  < Film > Filme  =  ArrayList  < Film 
> ();
     //  Elemente zur Array-Liste hinzufügen 

 CardSliderViewPager  cardSliderViewPager  =  ( CardSliderViewPager ) findViewById (
 R [19459014viewById. ;
  cardSliderViewPager.setAdapter ( MoviesAdapter  (movies)); 

5- Zum Hinzufügen eines Indikators fügen Sie ihn Ihrem Layout hinzu

  < com 
 .github.islamkhsh.CardSliderIndicator
             android :  layout_width  =  " wrap_content " 

             android :  layout_height  =  " wrap_content " 

             android :  id  =  " @ + id / indicator "  /> 

Und binde es dann mit deinem CardSliderViewPager

  < com 

 .github.islamkhsh.CardSliderViewPager
            ...
             App :  cardSlider_indicator  =  " @ id / indicator "  /> 

Attributes List

1- CardSliderViewPager

Attribut Beschreibung Standardwert cardSlider_smallScaleFactor Der kleine Maßstab der nächsten und vorherigen Seite. 1 (keine Größenänderung) cardSlider_baseShadow Die CardView-Höhe bei Auswahl von [19659136] 2dp cardSlider_minShadow Die CardView-Ansicht der nächsten und vorherigen Karten. baseShadow * smallScaleFactor cardSlider_pageMargin Der Abstand zwischen zwei Seiten. Dies muss größer sein als baseShadow + minShadow oder es wird überschrieben. baseShadow + minShadow cardSlider_otherPagesWidth Die Breite der angezeigten Teile der nächsten und vorherigen Karten. 0 [19659136cardSlider_cardBackgroundColor Die Hintergrundfarbe der Karte. Weiß cardSlider_cardCornerRadius Der Eckenradius der Kartenansicht. 0 cardSlider_indicator5 um mit diesem View-Pager zu arbeiten. kein Indikator

paddingLinks und rechts werden mit otherPagesWidth + pageMargin

2- CardSliderIndicator

Attribut Beschreibung Standardwert
default_indicator Der Indikator, der bei Nichtauswahl gezeichnet werden kann default_dot.xml
selected_indicator Der Indikator, der bei Auswahl gezeichnet werden kann. selected_dot.xml
indicato r_margin Der Abstand zwischen Indikatoren die Mindestbreite von default_indicator und selected_indicator

.

About AndroidWeltEditor

Check Also

So fügen Sie Ihren nativen Android-Apps 3D-Grafiken und andere Unity-Funktionen hinzu

Mit dem neuesten Beta-Build 2019.3.a2 von Unity können die Laufzeitkomponenten in native Apps integriert werden, …

Schreibe einen Kommentar

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