StarRatingBar星星切换动画《IT蓝豹》
StarRatingBar星星切换动画
StarRatingBar星星切换动画,很久没有学习一下这个RatingBar了,今天来看看这个RatingBar的动画切换效果,
本例子主要是RatingBar移动效果处理动画,本项目自定义LStarRatingBar 的用展示评分的控件。目前有平移动画效果,透明度动画效果,放大缩小动画效果。
项目来源:https://github.com/gcgongchao/StarRatingBar
主要用法:
引入布局
<com.gc.starratingbar.views.LStarRatingBar
android:id="@+id/h_lstar_ratingbar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
app:starUnselect="@drawable/no_star"
app:starSelected="@drawable/star_top"
android:layout_centerHorizontal="true"
app:starSelectedNum="3"
app:animationEffect="starScale"
/>
自定义LStarRatingBar extends LinearLayout
主要由如下动画实现切换:
private void startAnimation(int index)
{
switch (animationEffect) {
case StarContants.defEffect:
break;
case StarContants.scaleEffect:
// this.setPadding(20, 20, 20, );
// LayoutParams mLayoutParams=(LayoutParams) this.getLayoutParams();
// mLayoutParams.bottomMargin=20;
// mLayoutParams.topMargin=20;
// setLayoutParams(mLayoutParams);
switch (index) {
case 0:
ScaleAnimation.startAnimation(mIvStarOne, 360, 0,mHandler,starSelectedNum);
break;
case 1:
ScaleAnimation.startAnimation(mIvStarSecond, 360, 1,mHandler,starSelectedNum);
break;
case 2:
ScaleAnimation.startAnimation(mIvStarThree, 360, 2,mHandler,starSelectedNum);
break;
case 3:
ScaleAnimation.startAnimation(mIvStarFour, 360, 3,mHandler,starSelectedNum);
break;
case 4:
ScaleAnimation.startAnimation(mIvStarFive, 360, 4,mHandler,starSelectedNum);
break;
default:
break;
}
break;
case StarContants.alphaEffect:
switch (index) {
case 0:
AlphaAnimation.startAnimation(mIvStarOne, 720, 0,mHandler,starSelectedNum);
break;
case 1:
AlphaAnimation.startAnimation(mIvStarSecond, 720, 1,mHandler,starSelectedNum);
break;
case 2:
AlphaAnimation.startAnimation(mIvStarThree, 720, 2,mHandler,starSelectedNum);
break;
case 3:
AlphaAnimation.startAnimation(mIvStarFour, 720, 3,mHandler,starSelectedNum);
break;
case 4:
AlphaAnimation.startAnimation(mIvStarFive, 720, 4,mHandler,starSelectedNum);
break;
default:
break;
}
break;
case StarContants.translationEffect:
switch (index) {
case 0:
TranslationAnimation.startAnimation(mIvStarOne, 720, 0,mHandler,starSelectedNum);
break;
case 1:
TranslationAnimation.startAnimation(mIvStarSecond, 720, 1,mHandler,starSelectedNum);
break;
case 2:
TranslationAnimation.startAnimation(mIvStarThree, 720, 2,mHandler,starSelectedNum);
break;
case 3:
TranslationAnimation.startAnimation(mIvStarFour, 720, 3,mHandler,starSelectedNum);
break;
case 4:
TranslationAnimation.startAnimation(mIvStarFive, 720, 4,mHandler,starSelectedNum);
break;
default:
break;
}
break;
default:
break;
}
}
运行效果:
相关代码
StarRatingBar星星切换动画《IT蓝豹》的更多相关文章
- AndroidScreenSlide项目切换view动画效果《IT蓝豹》
AndroidScreenSlide项目切换view动画效果 AndroidScreenSlide项目中有几个不错的效果,一:Card Flip翻页立体效果,二:Screen Slide 左右切换vi ...
- 一个不错的loading效果--IT蓝豹
一个不错的loading效果 介绍:一个不错的loading加载效果,弹性收缩,效果不错,学习android动画的朋友可以下载来研究研究本例子其实由SeekBar实现,由MetaballView,Me ...
- uwp 图片切换动画
最近在学习安卓,LOL自定义战绩项目近乎停工,而且腾旭把界面全改了,好烦.刚好学习到安卓中的图片切换动画,我就想在LOL项目中实现一个.首先上百度查看一下,妈的,资料少的可怜. 还是自己来吧.自定义控 ...
- HTML5移动端图片左右切换动画
插件描述:HTML5移动端图片左右切换动画 小海今天要给大家分享一款很不错的图片左右切换焦点图动画,并且支持移动端触摸滑动.功能上,这款HTML5图片播放器支持鼠标滑动.手机端触摸滑动以及自动播放.外 ...
- Android Activity 切换动画(非原创)
在Android开发过程中,经常会碰到Activity之间的切换效果的问题,下面介绍一下如何实现左右滑动的切换效果,首先了解一下Activity切换的实现,从Android2.0开始在Activity ...
- 在android开发中使用multdex的方法-IT蓝豹为你整理
Android系统在安装应用时,往往需要优化Dex,而由于处理工具DexOpt对id数目的限制,导致其处理的数目不能超过65536个,因此在Android开发中,需要使用到MultiDex来解决这个问 ...
- 《IT蓝豹》挑战独立开发项目能力
做了5年的android开发,今天没事写写刚入行不久的时候第一次独立开发项目的心得体会, 当时我刚工作8个月,由于公司运营不善倒闭了,在2011年3月份我开始准备跳槽, 看了一周andro ...
- 两个APP之间怎么调用《IT蓝豹》
两个app之间怎么调用? (1):通过显示Intent 启动 首先:配置好B app 的action,即AndroidManifest.xml中声明 <intent-filter> ...
- Android切换动画之ViewPager
有过开发经验的程序员都知道这个效果,就是当我们第一次安装一个软件时有一个使用说明的图片切换效果,他是如何实现的呢?今天我们就一起学习一下吧,难度系数1.0,就是只要你仔细分析,都可以学会.废话不多说, ...
随机推荐
- (转)C#SocketAsyncEventArgs实现高效能多并发TCPSocket通信
原文地址:http://freshflower.iteye.com/blog/2285272.http://freshflower.iteye.com/blog/2285286 一)服务器端 说到So ...
- Linux IO多路复用 select/poll/epoll
Select -- synchronius I/O multiplexing select, FS_SET,FD_CLR,FD_ISSET,FD_ZERO #include <sys/time. ...
- Java 9 - Java Number类
Java Number类 一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte.int.long.double等. 实例 int i = 5000; float gpa = 13.65 ...
- C# JToken类的使用,实现解析动态json数据、遍历、查找
在原来解析json数据是,一般都是用反序列化来实现json数据的解读,这需要首先知道json数据的结构并且建立相应的类才能反序列化,一旦遇到动态的json数据,这种方法就不使用. 为了解决动态解析js ...
- couchdb
http://docs.couchdb.org/en/2.0.0/api/database/find.html#find-selectors
- 在linux环境下mongodb的安装和启动
安装 下载mongodb的版本,两点注意 根据业界规则,偶数为稳定版,如1.6.X,奇数为开发版,如1.7.X 32bit的mongodb最大只能存放2G的数据,64bit就没有限制 到官网,选择合适 ...
- linux环境下redis数据库的安装|配置|启动
安装 下载:打开redis官方网站,推荐下载稳定版本(stable) 解压 tar zxvf redis-3.2.5.tar.gz 复制:推荐放到usr/local目录下 sudo mv -r red ...
- eclipse创建的maven项目中使用javafx
类似普通maven项目,不需要特地创建javafx项目. 将fxml资源文件放在resource目录下即可.
- 23.1纯 CSS 创作一个菜单反色填充特效
交互效果地址:https://scrimba.com/c/cEwREJs6 HTML代码: <nav> <ul> <li><span>Home</ ...
- java中的排序(自定义数据排序)--使用Collections的sort方法
排序:将一组数据按相应的规则 排列 顺序 1.规则: 基本数据类型:日常的大小排序. 引用类型: 内置引用类型(String,Integer..),内部已经指定规则,直接使用即可.---- ...
