The Android Arsenal – Menus


This is a view group in which you can pass list of menu items and those items will be drawn under circular path.

https://github.com/alokverma/circle-menu/blob/main/app/apk/app-debug.apk

To get a Git project into your build:

Step 1. Add the JitPack repository to your build file

gradle

Add it in your root build.gradle at the end of repositories:

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

Step 2. Add the dependency

dependencies {
        implementation 'com.github.alokverma:circle-menu:1.1'
}
   <com.akki.circlemenu.CircleMenu
      android:id="@+id/circle_menu"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      app:menu_background_color="@array/menu_back_colors"
      app:menu_close_duration="300"
      app:menu_icons="@array/menus"
      app:menu_open_duration="400"
  app:menu_orientation="circle"
      app:menu_radius="100dp">
  app:menu_icons = arrays of vector/png menu items
  app:menu_background_color = array of background tint for those menus
  app:menu_open_duration = open animation duration of circle
  app:menu_close_duration = close animation duration of circle
  app:menu_radius= radius of circle
  app:menu_orientation="circle|vertical"

In your activity/fragment, you can pass setOnMenuItemClickListener and you can get all menu item click event in onMenuItemClicked function.

  CircleMenu.setOnMenuItemClickListener(this)
  override fun onMenuItemClicked(id: Int) {
    when (id) {
        R.drawable.ic_baseline_delete_forever_24 -> showToast("Delete Button clicked")
        R.drawable.ic_baseline_person_search_24 -> showToast("Person Button clicked")
        R.drawable.ic_baseline_settings_24 -> showToast("Setting Button clicked")
        R.drawable.ic_baseline_edit_location_24 -> showToast("Location Button clicked")
    }
}

LinkedIn  

If you like my work, please give it a star and let me know if you facing any query while implementing this.

Logo
Enable registration in settings - general
Compare items
  • Total (0)
Compare
0