Android 自定义View之3D骰子旋转
你可以指定立方体中每一面骰子的点数,颜色和背景,同时也可以指定执行的动画时间和动画插值器
更多有趣的view
使用
在根目录的build.gradle添加这一句代码:
allprojects {repositories {//...maven { url 'https://jitpack.io' }}
}
复制代码
在app目录下的build.gradle添加依赖使用:
dependencies {implementation 'com.github.samlss:DiceLoadingView:1.0'
}复制代码
在开始介绍DiceLoadingView之前,先看一下骰子即DeiceView的组成
DiceView
在DiceLoadingView中应用的骰子view
以下为效果图:
使用
布局中:
<com.iigo.library.DiceViewandroid:layout_marginTop="10dp"app:number="one"app:bgColor="@android:color/white"app:borderColor="@color/colorPrimary"app:pointColor="@color/colorPrimary"android:layout_width="50dp"android:layout_height="50dp" />
复制代码
代码:
diceView.setNumber(2); //设置骰子点数,必须为1-6
diceView.setPointColor(Color.RED); //设置点的颜色
diceView.setBgColor(Color.RED); //设置背景颜色
diceView.setBorderColor(Color.RED); //设置边界颜色
复制代码
属性说明:
开始描述效果图之前,先看一张说明图:
attr | description |
---|---|
number | 骰子点数 one(1), two(2), three(3), four(4), five(5), six(6) |
pointColor | 点的颜色 |
bgColor | 背景颜色 |
borderColor | 边界颜色 |
DiceLoadingView
使用
布局中使用:
<com.iigo.library.DiceLoadingViewandroid:id="@+id/dlv_loading1"app:animDuration="2000"app:animInterpolator="AccelerateDecelerateInterpolator"app:firstSideDiceNumber="1"app:firstSideDicePointColor="@color/colorPrimary"app:firstSideDiceBgColor="@android:color/white"app:firstSideDiceBorderColor="@color/colorPrimary"app:secondSideDiceNumber="2"app:secondSideDicePointColor="@android:color/holo_orange_dark"app:secondSideDiceBgColor="@android:color/white"app:secondSideDiceBorderColor="@android:color/holo_orange_dark"app:thirdSideDiceNumber="3"app:thirdSideDicePointColor="@android:color/holo_red_dark"app:thirdSideDiceBgColor="@android:color/white"app:thirdSideDiceBorderColor="@android:color/holo_red_dark"app:fourthSideDiceNumber="4"app:fourthSideDiceBgColor="@android:color/white"app:fourthSideDiceBorderColor="@android:color/holo_green_dark"app:fourthSideDicePointColor="@android:color/holo_green_dark"android:layout_width="50dp"android:layout_height="50dp" />复制代码
代码中使用:
diceLoadingView.start(); //开始动画
diceLoadingView.stop(); //停止动画
diceLoadingView.pause(); //暂停动画
diceLoadingView.resume(); //恢复动画
diceLoadingView.release(); //不需要使用该loading view的时候可手动释放,例如在activity的ondestroy()中diceLoadingView.setDuration(3000); //设置动画时间
diceLoadingView.setInterpolator(new AnticipateOvershootInterpolator()); //设置动画插值器
diceLoadingView.setFirstSideDiceNumber(2); //设置第一面骰子点数(1-6)
diceLoadingView.setFirstSidePointColor(Color.parseColor("#FF7D81")); //设置第一面骰子点的颜色
diceLoadingView.setFirstSideDiceBgColor(Color.WHITE); //设置第一面骰子背景颜色
diceLoadingView.setFirstSideDiceBorderColor(Color.GRAY); //设置第一面骰子边界颜色diceLoadingView.setSecondSideDiceNumber(3); //设置第二面骰子点数(1-6)
diceLoadingView.setSecondSidePointColor(Color.BLUE); //设置第二面骰子点的颜色
diceLoadingView.setSecondSideDiceBgColor(Color.WHITE); //设置第二面骰子背景颜色
diceLoadingView.setSecondSideDiceBorderColor(Color.BLUE); //设置第二面骰子边界颜色diceLoadingView.setThirdSideDiceNumber(4); //设置第三面骰子点数(1-6)
diceLoadingView.setThirdSidePointColor(Color.GREEN); //设置第三面骰子点的颜色
diceLoadingView.setThirdSideDiceBgColor(Color.WHITE); //设置第三面骰子背景颜色
diceLoadingView.setThirdSideDiceBorderColor(Color.GREEN); //设置第三面骰子边界颜色diceLoadingView.setFourthSideDiceNumber(5); //设置第四面骰子点数(1-6)
diceLoadingView.setFourthSidePointColor(Color.RED); //设置第四面骰子点的颜色
diceLoadingView.setFourthSideDiceBgColor(Color.WHITE); //设置第四面骰子背景颜色
diceLoadingView.setFourthSideDiceBorderColor(Color.RED); //设置第四面骰子边界颜色
复制代码
属性说明:
开始描述效果图之前,先看两张张说明图:
针对立方体而言
针对每一个骰子面而言:
attr | description |
---|---|
animDuration | 动画时间 |
animInterpolator | 动画加速器 |
firstSideDiceNumber | 第一面骰子点数(1-6) |
firstSideDicePointColor | 第一面骰子点的颜色 |
firstSideDiceBgColor | 第一面骰子背景颜色 |
firstSideDiceBorderColor | 第一面骰子边界颜色 |
secondSideDiceNumber | 第二面骰子点数(1-6) |
secondSideDicePointColor | 第二面骰子点的颜色 |
secondSideDiceBgColor | 第二面骰子背景颜色 |
secondSideDiceBorderColor | 第二面骰子边界颜色 |
thirdSideDiceNumber | 第三面骰子点数(1-6) |
thirdSideDicePointColor | 第三面骰子点的颜色 |
thirdSideDiceBgColor | 第三面骰子背景颜色 |
thirdSideDiceBorderColor | 第三面骰子边界颜色 |
fourthSideDiceNumber | 第四面骰子点数(1-6) |
fourthSideDicePointColor | 第四面骰子点的颜色 |
fourthSideDiceBgColor | 第四面骰子背景颜色 |
fourthSideDiceBorderColor | 第四面骰子边界颜色 |
[Github](https://github.com/samlss/DiceLoadingView)
Android 自定义View之3D骰子旋转相关推荐
- android旋转不重绘,Android自定义view仿微信刷新旋转小风车
本文实例为大家分享了Android仿微信刷新旋转小风车 具体代码,供大家参考,具体内容如下 不太会录像,没办法,智能截图了 不多说了,直接上代码 package com.shipneg.demoysp ...
- Android 自定义View消除锯齿实现图片旋转,添加边框及文字说明
先看看图片的效果,左边是原图,右边是旋转之后的图: 之所以把这个写出来是因为在一个项目中需要用到这样的效果,我试过用FrameLayout布局如上的画面,然后旋转FrameLayout,随之而来也 ...
- android 自定义view之掷骰子小人走动的游戏
最近产品经理出了一个幺蛾子,说要通过一个小游戏来吸引用户获取奖励,当时过需求的时候,内心何止是一万个草泥马奔腾而过,简直是一亿个草泥马.过需求之后就冷静下来讨论该怎么实现,做完之后发现,其实也没有那么 ...
- 一篇文章带你走近Android自定义view
系列文章目录 一篇文章带你走近Android自定义view 文章目录 系列文章目录 前言 一.为什么要自定义view 二.先看看一个超级简单的自定义view(三个构造函数) 三.了解手机的坐标系 四. ...
- Android 将签名布局旋转90度,Android 自定义View手写签名
Android 自定义View:手写签名 最近项目中有个新的需求,就是要实现用户手写签名,然后展示再上传到服务器.看到效果图后,先是面对百度编程搜了一下,很多实现方法,主要就是自定义View实现的,为 ...
- Android 自定义View合集
http://blog.csdn.net/u011507982/article/details/51199644 自定义控件学习 https://github.com/GcsSloop/Androi ...
- Android 自定义View —— Canvas
上一篇在android 自定义view Paint 里面 说了几种常见的Point 属性 绘制图形的时候下面总有一个canvas ,Canvas 是是画布 上面可以绘制点,线,正方形,圆,等等,需要和 ...
- android自定义view获取控件,android 自定义控件View在Activity中使用findByViewId得到结果为null...
转载:http://blog.csdn.net/xiabing082/article/details/48781489 1. 大家常常自定义view,,然后在xml 中添加该view 组件..如果在 ...
- android代码实现手机加速功能,Android自定义View实现内存清理加速球效果
Android自定义View实现内存清理加速球效果 发布时间:2020-09-21 22:21:57 来源:脚本之家 阅读:105 作者:程序员的自我反思 前言 用过猎豹清理大师或者相类似的安全软件, ...
最新文章
- Python-线程的生命周期
- 借助树的概率dp(期望)+数学-好题-hdu-4035-Maze
- cmake的使用--从零建立一个小cmake工程
- 一加3 CM13 12306 不能用
- php oracle 锁表,频繁使用的一张表经常好被锁死?怎样处理!
- 【地理建模】现代地理学中的数学方法:主成分分析法案例详解
- 最大乘积(记忆化搜索)
- 升级python以及安装anaconda
- 生成core文件的步骤
- mp3播放程序c语言,Go语言音乐播放器
- 项目集成sentry
- 易宝典文章——玩转Office 365中的Exchange Online服务 之十一 怎样在Exchange Online中配置邮件传递限制...
- Adobe flash builder 4 不生效的序列号说明及解決方法
- 三星PM981(a)硬盘安装黑苹果(第五版)
- AliDDNS 阿里云动态域名服务 实用工具
- 如何一键录制4k8k高清视频?
- linux查询过滤文件名后缀,在linux下搜索文件 文件名后缀
- PTA-天梯赛-7-8 GOGO冲
- 图形学(7)反走样技术
- JVM 对 Java 的原生锁做了哪些优化?