Lucky Wheel

Additional

Language
Java
Version
0.3.0 (Feb 17, 2020)
Created
Apr 22, 2017
Updated
Feb 17, 2020
Owner
Mohamed Mo'men (mmoamenn)
Contributors
MFlisar
Mohamed Mo'men (mmoamenn)
2
Activity
Badge
Generate
Download
Source code
APK file

Advertisement

LuckyWheel Android

Android custom component that displays a lucky wheel. it features easy customize of colors , text and addition of items and it's very trivial to integrate in your application.

What's new in 0.3.0

  • Fix the image rotation issue

Sample

.

Installing

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.mmoamenn:LuckyWheel_Android:0.3.0'
  }

XML

<com.bluehomestudio.luckywheel.LuckyWheel
        android:id="@+id/lwv"
        android:layout_width="250dp"
        android:layout_height="250dp"
        android:layout_centerInParent="true"
        LuckyWheel:background_color="@color/colorPrimary" />

You must use the following properties in your XML

Choose the background color

LuckyWheel:background_color

Choose wheel image arrow

LuckyWheel:arrow_image

Change item image padding

LuckyWheel:image_padding

Kotlin

Functions to use after reference the Lucky wheel

  • Create wheel sections
val wheelItems: MutableList<WheelItem> = ArrayList()

wheelItems.add(WheelItem(Color.LTGRAY,
BitmapFactory.decodeResource(resources, R.drawable.ic_action_name),
"text 1"))

wheelItems.add(WheelItem(Color.BLUE,
BitmapFactory.decodeResource(resources, R.drawable.ic_action_name),
"text 2"))

wheelItems.add(WheelItem(Color.BLACK,
BitmapFactory.decodeResource(resources, R.drawable.ic_action_name),
"text 3"))

wheelItems.add(WheelItem(Color.GRAY,
BitmapFactory.decodeResource(resources, R.drawable.ic_action_name)
,"text 4"))

wheelItems.add(WheelItem(Color.RED,
BitmapFactory.decodeResource(resources, R.drawable.ic_action_name),
"text 5"))

wheelItems.add(WheelItem(Color.BLACK,
BitmapFactory.decodeResource(resources, R.drawable.ic_action_name),
"text 6"))
  • Add sections to wheel
 addWheelItems(wheelItems)
  • Rotate by touch -- set target before user touch wheel
 setTarget(3)
  • Rotate to section -- not need if you will use touch
 rotateWheelTo(2)
  • On target reach listener
 lwv.setLuckyWheelReachTheTarget {
 
 }

Note

Last version before support AndroidX com.github.mmoamenn:LuckyWheel_Android:0.1.2