1 Star 0 Fork 0

斯诺克 / LuckPan

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

幸运转盘


特性

Android 抽奖转盘基于View的实现,主要有以下几点特性:

点击按钮滚动

点击按钮滚动

随手势滚动

随手势滚动

使用

滚动到指定区域

 /**
 * 开始转动
 * @param pos 如果 pos = -1 则随机,如果指定某个值,则转到某个指定区域
 */
public void startRotate(int pos){

    int lap = (int) (Math.random()*12) + 4;

    int angle = 0;
    if(pos < 0){
        angle = (int) (Math.random() * 360);
    }else{
        int initPos  = queryPosition();
        if(pos > initPos){
            angle = (pos - initPos)*60;
            lap -= 1;
            angle = 360 - angle;
        }else if(pos < initPos){
            angle = (initPos - pos)*60;
        }else{
            //nothing to do.
        }
    }

改变转盘个数

   <com.hr.nipuream.luckpan.view.RotatePan
        android:id="@+id/rotatePan"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="78dp"
        android:layout_centerHorizontal="true"
        luckpan:pannum="8"
        luckpan:names="@array/names"
        luckpan:icons="@array/icons"
        />

        将pannum改为你想要的数量,然后names和icons定义在arrays.xml文件中

        <resources>
            <string-array name="names">
                <item>action</item>
                <item>adventure</item>
                <item>combat</item>
                <item>moba</item>
                <item>other</item>
                <item>role</item>
                <item>sports</item>
                <item>words</item>
            </string-array>

            <string-array name="icons">
                <item>action</item>
                <item>adventure</item>
                <item>combat</item>
                <item>moba</item>
                <item>other</item>
                <item>role</item>
                <item>sports</item>
                <item>words</item>
            </string-array>
        </resources>

        其中arrays.xml中的数量要和转盘的数量一致

经过实践和反馈,最多使用的转盘数为6、8,所以对这两种情况进行了兼容,其他数量的转盘可能会有些小问题,详细操作见Demo和更多信息。

更多信息

Android 抽奖转盘的实现

空文件

简介

暂无描述 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/snow8256/LuckPan.git
git@gitee.com:snow8256/LuckPan.git
snow8256
LuckPan
LuckPan
master

搜索帮助