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# Oracle数据库操作类
原文地址:http://www.cnblogs.com/haibing0107/p/6143922.html using System;using System.Data;using System.C ...
- lua 安装
1:下载安装 curl -R -O http://www.lua.org/ftp/lua-5.3.0.tar.gz tar zxf lua-5.3.0.tar.gz cd lua-5.3.0 make ...
- boost 学习笔记 2: timer
boost 学习笔记 2: timer copy from:http://einverne.github.io/post/2015/12/boost-learning-note-2.html 1:ti ...
- JS弹框
<script type="text/javascript"> function show_alert() { alert('警报'); } function show ...
- android 开发 singleTask启动模式下传值的坑
日常填坑. 做了什么操作引起的?如下: 在活动A 启动模式设置为singleTask ,然后再用活动A启动活动B,活动B启动活动C. 现在我的活动C要使用intent携带值去启动活动A.在活动A中正常 ...
- mysql如何修改root用户的密码
方法1: 用SET PASSWORD命令 首先登录MySQL. 格式:mysql> set password for 用户名@localhost = password('新密码'); 例子:my ...
- jquery轮播图片(无插件简单版)
轮播图(第三版)[2016-2-26] 工作中用的,改写了半透明蒙版,可以兼容ie7 <script type="text/javascript" src="htt ...
- git 常用操作总结
廖雪峰博客的git 教程写得不错, 很详细,但是却总结的不是很好. 这里哥再详细总结一遍吧! Git鼓励大量使用分支: 查看分支:git branch 创建分支:git branch 切换分支:git ...
- Mybatis:通过MapperScannerConfigurer进行mapper扫描
在applicationContext.xml里配置的
- Mysql 储存引擎
查看当前版本支持哪些储存引擎 mysql> show engines; InnoDB 支持事务机制 : 保证操作安全性 行级锁定 : 开销大,加锁慢:会出现死锁:锁定粒度最小,发生锁冲突的概率最 ...
