GiftSurfaceView

Introduction: 直播间送礼物组合动画
More: Author   ReportBugs   
Tags:
gift-surfaceview-animation-

Download License

GiftSurfaceView 最初出自于 2014 年开发 HalloStar 项目时所写,主要用于 HalloStar 项目直播间的送礼物动画。现在想来,那夕阳下的奔跑,是我逝去的青春。因高仿全民 TV 项目时想起,所以抽空整理了下,以此记录。

Gif 展示

gif

你也可以直接下载 演示 App 体验效果

引入

Gradle:

  1. 在 Project 的 build.gradlesetting.gradle 中添加远程仓库

     repositories {
         //...
         mavenCentral()
         maven { url 'https://jitpack.io' }
     }
    
  2. 在 Module 的 build.gradle 里面添加引入依赖项

     implementation 'com.github.jenly1314:GiftSurfaceView:1.1.0'
    

使用

代码示例

    public void updateGiftSurfaceView(int type){

        frame.removeAllViews();

        GiftSurfaceView giftSurfaceView = new GiftSurfaceView(context);
        if(type == RANDOM){
            giftSurfaceView.setImageResource(R.drawable.rose);
        }else{
            giftSurfaceView.setImageBitmap(bitmap,.5f);
        }

        giftSurfaceView.setPointScale(1,width/10,(int)(height/3.8f));
        giftSurfaceView.setRunTime(10000);

        try {

            switch (type){
                case RANDOM:
                    giftSurfaceView.setRandomPoint(9);
                    break;
                case V:
                    giftSurfaceView.setListPoint(PointUtils.getListPointByResourceJson(context,ASSET_V),true);
                    break;
                case HEART:
                    giftSurfaceView.setListPoint(PointUtils.getListPointByResourceJson(context,ASSET_HEART),true);
                    break;
                case LOVE:
                    giftSurfaceView.setListPoint(PointUtils.getListPointByResourceJson(context,ASSET_LOVE));
                    break;
                case SMILE:
                    giftSurfaceView.setListPoint(PointUtils.getListPointByResourceJson(context,ASSET_SMILE));
                    break;
                case X:
                    giftSurfaceView.setListPoint(PointUtils.getListPointByResourceJson(context,ASSET_X));
                    break;
                case V520:
                    giftSurfaceView.setListPoint(PointUtils.getListPointByResourceJson(context,ASSET_V520));
                    break;
                case V1314:
                    giftSurfaceView.setRunTime(GiftSurfaceView.LONG_TIME);
                    giftSurfaceView.setListPoint(PointUtils.getListPointByResourceJson(context,ASSET_V1314));
                    break;

            }
            frame.addView(giftSurfaceView);
        } catch (IOException e) {
            e.printStackTrace();
        }


    }

更多使用详情,请查看app中的源码使用示例或直接查看API 帮助文档

赞赏

如果您喜欢 GiftSurfaceView,或感觉 GiftSurfaceView 帮助到了您,可以点右上角“Star”支持一下,您的支持就是我的动力,谢谢 :smiley:

您也可以扫描下面的二维码,请作者喝杯咖啡 :coffee:

关于我

我的博客 GitHub Gitee CSDN 博客园
Jenly's Blog jenly1314 jenly1314 jenly121 jenly

联系我

微信公众号 Gmail 邮箱 QQ 邮箱 QQ 群 QQ 群
Jenly666 jenly1314 jenly1314 20867961 64020761
Apps
About Me
GitHub: Trinea
Facebook: Dev Tools