Laden Sie einfach das Paket hier herunter und fügen Sie es Ihrem Projektklassenpfad hinzu oder verwenden Sie einfach das Maven-Repo:
Gradle:
implementation ' com.ramotion.circlemenu:circle-menu:0.3.2 '
SBT:
libraryDependencies += " com.ramotion.circlemenu " % " circle-menu " % " 0.3.2 "
Maven:
< dependency >
< groupId >com.ramotion.circlemenu</ groupId >
< artifactId >circle-menu</ artifactId >
< version >0.3.2</ version >
</ dependency >
Platzieren Sie CircleMenuView
in Ihrem Layout und legen Sie die Symbole und Farben der Schaltflächen fest, wie unten gezeigt.
app:button_colors="@array/colors"
app:button_icons="@array/icons"
Beispiel für Array colors
und icons
in resvaluesbuttons.xml
:
<? xml version = " 1.0 " encoding = " utf-8 " ?>
< resources >
< array name = " icons " >
< item >@drawable/ic_home_white_24dp</ item >
< item >@drawable/ic_search_white_24dp</ item >
< item >@drawable/ic_notifications_white_24dp</ item >
< item >@drawable/ic_settings_white_24dp</ item >
< item >@drawable/ic_place_white_24dp</ item >
</ array >
< array name = " colors " >
< item >@android:color/holo_blue_light</ item >
< item >@android:color/holo_green_dark</ item >
< item >@android:color/holo_red_light</ item >
< item >@android:color/holo_purple</ item >
< item >@android:color/holo_orange_light</ item >
</ array >
</ resources >
Oder verwenden Sie den Konstruktor
CircleMenuView ( @ NonNull Context context , @ NonNull List < Integer > icons , @ NonNull List < Integer > colors )
um CircleMenuView
hinzuzufügen und die Schaltflächen programmgesteuert (im Code) zu konfigurieren.
Verbinden Sie als Nächstes den Ereignishandler CircleMenuView.EventListener
wie unten gezeigt und überschreiben Sie die benötigten Methoden.
final CircleMenuView menu = ( CircleMenuView ) findViewById ( R . id . circle_menu );
menu . setEventListener ( new CircleMenuView . EventListener () {
@ Override
public void onMenuOpenAnimationStart ( @ NonNull CircleMenuView view ) {
Log . d ( "D" , "onMenuOpenAnimationStart" );
}
@ Override
public void onMenuOpenAnimationEnd ( @ NonNull CircleMenuView view ) {
Log . d ( "D" , "onMenuOpenAnimationEnd" );
}
@ Override
public void onMenuCloseAnimationStart ( @ NonNull CircleMenuView view ) {
Log . d ( "D" , "onMenuCloseAnimationStart" );
}
@ Override
public void onMenuCloseAnimationEnd ( @ NonNull CircleMenuView view ) {
Log . d ( "D" , "onMenuCloseAnimationEnd" );
}
@ Override
public void onButtonClickAnimationStart ( @ NonNull CircleMenuView view , int index ) {
Log . d ( "D" , "onButtonClickAnimationStart| index: " + index );
}
@ Override
public void onButtonClickAnimationEnd ( @ NonNull CircleMenuView view , int index ) {
Log . d ( "D" , "onButtonClickAnimationEnd| index: " + index );
}
});
Sie können die Methoden open(boolean animate)
und close(boolean animate)
verwenden, um Menüs programmgesteuert zu öffnen und zu schließen
Hier sind die Attribute, die Sie über XML oder verwandte Setter angeben können:
button_icons
– Array von Schaltflächensymbolen.button_colors
– Array von Schaltflächenfarben.icon_menu
– Standardsymbol für das Menü.icon_close
– Symbol für geschlossenes Menü.icon_color
– Farbe des Menüsymbols.duration_ring
– Dauer des Ringeffekts.duration_open
– Dauer der Animation zum Öffnen des Menüs.duration_close
– Dauer der Animation zum Schließen des Menüs.distance
– Abstand zwischen mittlerer Taste und Tasten Circle Menu Android wird unter der MIT-Lizenz veröffentlicht. Einzelheiten finden Sie unter LIZENZ.
Diese Bibliothek ist Teil einer Auswahl unserer besten UI-Open-Source-Projekte
Wenn Sie die Open-Source-Bibliothek in Ihrem Projekt verwenden, achten Sie bitte darauf, www.ramotion.com zu nennen und einen Backlink darauf zu setzen
Probieren Sie diese und weitere UI-Komponenten in unserer Android-App aus. Kontaktieren Sie uns bei Interesse.