Cukup unduh paketnya dari sini dan tambahkan ke classpath proyek Anda, atau cukup gunakan repo maven:
Gradasi:
implementation ' com.ramotion.circlemenu:circle-menu:0.3.2 '
SBT:
libraryDependencies += " com.ramotion.circlemenu " % " circle-menu " % " 0.3.2 "
Pakar:
< dependency >
< groupId >com.ramotion.circlemenu</ groupId >
< artifactId >circle-menu</ artifactId >
< version >0.3.2</ version >
</ dependency >
Tempatkan CircleMenuView
di tata letak Anda dan atur ikon dan warna tombol, seperti yang ditunjukkan di bawah ini.
app:button_colors="@array/colors"
app:button_icons="@array/icons"
Contoh colors
dan icons
array di 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 >
Atau gunakan konstruktor
CircleMenuView ( @ NonNull Context context , @ NonNull List < Integer > icons , @ NonNull List < Integer > colors )
untuk menambahkan CircleMenuView
dan mengkonfigurasi tombol secara terprogram (dalam kode).
Selanjutnya, sambungkan event handler CircleMenuView.EventListener
seperti yang ditunjukkan di bawah ini, dan ganti metode yang Anda perlukan.
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 );
}
});
Anda dapat menggunakan metode open(boolean animate)
dan close(boolean animate)
, untuk membuka dan menutup menu secara terprogram
Berikut adalah atribut yang dapat Anda tentukan melalui XML atau setter terkait:
button_icons
- Kumpulan ikon tombol.button_colors
- Kumpulan warna tombol.icon_menu
- Ikon bawaan menu.icon_close
- Ikon menu tertutup.icon_color
- Warna ikon menu.duration_ring
- Durasi efek dering.duration_open
- Durasi animasi pembukaan menu.duration_close
- Durasi animasi penutupan menu.distance
- Jarak antara tombol tengah dan tombol Circle Menu Android dirilis di bawah lisensi MIT. Lihat LISENSI untuk detailnya.
Perpustakaan ini adalah bagian dari pilihan proyek sumber terbuka UI terbaik kami
Jika Anda menggunakan perpustakaan sumber terbuka di proyek Anda, pastikan untuk memberi kredit dan tautan balik ke www.ramotion.com
Coba komponen UI ini dan komponen serupa lainnya di aplikasi Android kami. Hubungi kami jika berminat.