Home / Android-Entwicklung / Das Android Arsenal – Ansichten

Das Android Arsenal – Ansichten

Eine einfache Android-UI-Bibliothek für segmentierte Steuerelemente mit materialistischem Styling.

Wie fügt man hinzu?

I. Fügen Sie in Ihrer Stammdatei build.gradle Folgendes hinzu:







 allprojects {
 Repositories {
  ...
     maven {url 'https://jitpack.io'}
 }
}

II. Fügen Sie in Ihrer Datei build.gradle die folgende Abhängigkeit hinzu:




 dependencies {
    Implementierung 'com.github.creageek: segmented: 1.0.0-rc'
}

III. Deklarieren Sie SegmentedButton in Ihrer layout.xml -Datei:

 < com 
 .creageek.segmentedbutton.SegmentedButton
            android :  id  =  " @ + id / segmented " 
 android :  layout_width  = ] " 0dp " 
 android :  layout_height  =  " wrap_content 
 app  =  Elternteil 
 App :  layout_constraintStart_toStartOf  = Elternteil [1945901900]  ]: layout_constraintEnd_toEndOf  =  " parent "  /> 

Bitte beachten Sie, dass SegmentedButton sich von erstreckt. Sie können also als untergeordnetes Element RadioButton-Ansichten (für die kein zusätzliches Styling erforderlich ist) hinzufügen, um die Segmente abzurufen.

IV. Deklarieren Sie SegmentedButton in Ihrer class.kt . Sie können die Ansicht über ihre ID mit der Kraft des Kotlin-Android-Erweiterungs-Plugins aufrufen oder einfach findViewById (R.id.segmented) verwenden:


 segmented {

         //  Erstauswahl festlegen (standardmäßig keine Auswahl) 

        initialSelection  =  0 



         //  Init mit Segmenten programmgesteuert ohne RadioButton als Kind in XML 


        initWithItems {
             //  nimmt nur eine Liste von Zeichenfolgen an 
 listOf  ( " Today "  " Diese Woche "  " Diesen Monat " 


)
        }

         //  benachrichtigt, wenn Segment überprüft wurde 

        onSegmentChecked {segment  - > 
 Log  .d ( " creageek: segmented "  " Segment  $ {segment.text}  checked  "

)
        }
         //  benachrichtigt, wenn das Segment deaktiviert wurde 

        onSegmentUnchecked {segment  - > 
 Log  .d ( " creageek: segmented "  " Segment $ {segment.text}  deaktiviert  "

)
        }
         //  benachrichtigt, wenn das Segment erneut überprüft wurde 

        onSegmentRechecked {segment  - > 
 Log  .d ( " creageek: segmented "  " Segment  $ {segment.text}  erneut überprüft  "

)
        }
} 

So passen Sie an:

I. In Ihrer Datei layout.xml können Sie einige Attribute auf SegmentedButton festlegen:

  • app: textSize - Wendet die Textgröße auf alle untergeordneten Segmente an (Verweis auf eine Dimension) .
  • app: segmentHeight - Ermöglicht das Festlegen der Segmenthöhe (Verweis auf eine Bemaßung).
  • app: textColor - Ermöglicht das Festlegen der Textfarbe (Verweis auf eine Farbe).
  • app: textColorChecked - Ermöglicht das Festlegen der Textfarbe eines markierten Segments (Referenz auf eine Farbe).
  • app: segmentColor - Ermöglicht das Festlegen der Segmentfarbe (Referenz auf eine Farbe). [19659071] app: segmentColorChecked – Ermöglicht das Festlegen der Farbe eines aktivierten Segments (Referenz auf eine Farbe).
  • app: rippleColor – Ermöglicht das Festlegen der Ripple-Farbe eines Segments (Referenz auf eine Farbe).
  • app: rippleColorChecked – Ermöglicht das Festlegen der Ripple-Farbe eines aktivierten Segments (Referenz auf eine Farbe).
  • app: borderColor – Ermöglicht es Ihnen u zum Festlegen der Farbe des Rahmens eines Segments (Referenz auf eine Farbe).
  • app: borderWidth – Ermöglicht das Festlegen der Rahmenbreite eines Segments (Referenz auf eine Bemaßung).
  • app: cornerRadius – Ermöglicht das Festlegen des Eckenradius eines Segments (Bezug auf eine Bemaßung).
  • app: spreadType – Legt den Spreiztyp eines SegmentedButton fest. Mögliche Werte sind:

II. Wenn keine benutzerdefinierten Attribute festgelegt wurden, wurden standardmäßig die folgenden Werte angewendet:

  • Standardwerte colors.xml :
 < Ressourcen 
>
    < color  name  =  " default_text_color " > # 3e3e3d </  color 
>
    < color  name  =  " default_text_color_checked " > # ffffff </  color 

>

    < color  name  =  " default_segment_color " > # f8f8f8 </  color 
>
    < color  name  =  " default_segment_color_checked " > # 9e7682 </  color 

>

    < color  name  =  " default_ripple_color " > # 80e4e4e4 </  color 
>
    < color  name  =  " default_ripple_color_checked " > # c695a4 </  color 

>

    < color  name  =  " default_border_color " > # e4e4e4 </  color 
>
</  Ressourcen > 
  • Standardwerte dimens.xml :
 < Ressourcen 
>
    < dimen  name  =  " compound_drawable_size " > 24dp </  dimen 
>
    < dimen  name  =  " default_segment_text_size " > 16sp </  dimen 
>
    < dimen  name  =  " default_segment_height " > 48sp </  dimen 
>
    < dimen  name  =  " default_border_width " > 1dp </  dimen 
>
    < dimen  name  =  " default_corner_radius " > 8dp </  dimen 
>
</  Ressourcen > 

Was ist mit Beiträgen?

Wenn Sie Ideen, Vorschläge oder Probleme haben, können Sie das folgende Problem erstellen. Ich werde hier sein, um zu helfen und / oder SegmentedButton entsprechend Ihren Bedürfnissen zu verbessern (wenn es nicht der ursprünglichen Idee widerspricht).

Lizenz














 Copyright (C) 2019 Ruslan Kishai

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

Common policy violations and how you can avoid them

By Andrew Ahn, Product Manager, Google Play App Safety At Google Play, we want to …

Leave a Reply

Your email address will not be published. Required fields are marked *