• Stars
    star
    163
  • Rank 231,141 (Top 5 %)
  • Language
    Java
  • Created almost 8 years ago
  • Updated over 7 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

直播礼物动画

BSRGift

演示gif

1.概述

直播项目的礼物模块,实现一些基本的礼物动画,随着项目的深入,BSR也将会继续完善(2017-5-20,很不幸项目搁浅了。。。关于优化,有兴趣童鞋的可以试试重写textureview、surfaceview,效果应该要好很多)

2.用法 详见GiftAnmManager.java(资源文件切勿用于商业用途)

BSR提供BSRGiftView、和BSRGiftLayout两个控件

1.BSRGiftView 可以实现对图片资源的所有基本的礼物的动画,可以是简单的线性动画,当然这里最主要的还是贝塞尔曲线的动画效果。
2.BSRGiftLayout 则是针对View的动画实现,用法与BSRGiftView一致。

BSRPath* 为动画数据类

//-控件设置-
bsrGiftView.setRes(context, R.drawable.gift_car_t2); // 设置view的图片资源
bsrGiftLayout.addChild(bsrPathView); // 设置giftLayout的bsrPathView动画资源,并播放动画
bsrGiftView.addBSRPathPoints(bsrPathPoints); // 加入一组bsr并播放动画,不可保持之前执行的动画
bsrGiftView.addBSRPathPointAndDraw(bsrPathPoint); // 添加和播放一帧动画,用于帧动画
bsrGiftView.addBSRPathPoint(bsrPathPoint); // 加入一个动画数据,并播放,可保持之前执行的动画

//-动画数据设置-
bsrPath.setDuring(during); // 设置动画执行时间
bsrPath.setPositionInScreen(true); // 设置位置为相对控件的位置(比如0.5是控件的中心点)
bsrPath.setFirstRotation(-90); // 设置动画初始旋转角度
bsrPath.setAutoRotation(true); // 设置动画旋转跟随运动轨迹
bsrPath.setAdjustScaleInScreen(1f);// 设置资源相对容器的大小
bsrPath.attachPoint(bsr2);// 设置bsr的位移跟随bsr2
bsrPath.setPositionXPercent(0.5f);// 设置bsrX轴上位移的基准点
bsrPath.setAlphaTrigger(0.9f);// 设置动画的淡出在动画执行的到0.9的时候

bsrPath.setScale(0.5f);// 恒定bsr的缩放
bsrPath.setPositionPoint(0.5f,0.5f);// 恒定bsr的位置
bsrPath.setRotation(100);// 恒定bsr的恒定旋转角度

bsrPath.addScaleControl(0.5f);// 添加缩放的控制点用于贝塞尔效果
bsrPath.addRotationControl(30);// 添加旋转的控制点用于贝塞尔效果
bsrPath.addPositionControlPoint(200);// 添加位移的控制点用于贝塞尔效果,如果调用setPositionInScreen(true),填入的参数为相对父View界面的比例值

More Repositories

1

PullRefreshLayout

下拉刷新,上拉加载,真实的回弹(overscroll)效果(媲美qq),且大小只有37KB(是其他主流刷新库或回弹库的1/2,1/3,甚至是1/4),同时,自定义header和footer,可以实现任何你想的到的功能(例如:自动触发加载更多、二级刷新等)
Java
654
star
2

TVProjectUtils

TV 项目常用工具(焦点问题,适配问题等.)
Java
291
star
3

FlutterTest

事件拦截,屏幕适配等
Dart
87
star
4

InflaterAuto

a lib that make UI look the same in different android phones, 强大的屏幕适配库(AndroidAutoLayout替代方案),不只是适配!
Java
81
star
5

MagicTowerOrigin

魔塔起源
Dart
22
star
6

simplebanner

(最简单的广告轮播)the most simple banner
Java
18
star
7

RippleDrawable

Java
13
star
8

AsmMacHook

意在替换所有mac地址、imei等隐私政策未同意,不能获取的内容,处理第三方库私自调用
Java
13
star
9

CustomAdapter

a custom adapter for recyclerview
Java
12
star
10

burialPlugin

方法耗时统计插件burialPlugin
Java
11
star
11

ReferenceDump

统计new出来的对象数量,路径
C++
10
star
12

XHSCapaScale

小红书详情页图片手势效果
Kotlin
9
star
13

YRxBus

use just like eventbus
Java
8
star
14

RxLifeHelper

base on trello/RxLifecycle , use android.arch.lifecycle to send lifecycle event
Java
6
star
15

CoroutinesTest

kotlin 协程执行过程java代码化
Java
6
star
16

LoadMoreRecycler

LoadMoreRecycler
Java
4
star
17

xposedDemo

Java
4
star
18

Adsorption

recyclerView 悬浮吸顶demo(可以设置事件)。添加边距的方式,难以设置事件,所以本例直接在外部添加了一个跟随滑动的View,来实现相应的效果。
Java
4
star
19

libArtHookTest

test on xhook
C
3
star
20

FlutterDynamicAST

flutter 动态执行dart AST
Dart
3
star
21

IMClientProject

记录个人IM编程的成长历程(MVP+Dagger2+RxJava+Asmack+Openfire)
Java
2
star
22

PathInfo4Crash

发生crash或anr后,追加页面跳转路径和TextView界面快照,方便现下复现
Kotlin
2
star
23

CampusBBS

Java
1
star
24

AsyncMeasureTest

异步UI测量流程测试
Kotlin
1
star
25

ElfHookTest

Android so 文件hook 测试
C
1
star
26

flutterViewAround

flutterViewAround
1
star
27

HighPrivacyTest

应用启动,先走权限逻辑,授权后,走原本应用流程
Java
1
star
28

AudioEdit

音频混音、拼接、插入实现
C++
1
star