ITPub博客

首页 > IT职业 > IT图书 > 在进行软件更新时遇到头疼问题

在进行软件更新时遇到头疼问题

IT图书 作者:samenzhou 时间:2021-09-09 09:05:22 0 删除 编辑

我在做一个视频直播的app。当我加入动态礼物(gif)。编写代码来加入礼物和呈现特效的方法。但是导致了app的包变的非常大。这个怎么解决?跪求!!!!拿到的特效礼物有8个,每个礼物平均下来有8m左右。该如何实现包的优化。还请大神解决。以下是一个动画:
protected void showRedCarAnimation(SendGiftBean sendGiftBean) {
if (!giftAnimationPlayEnd) {
return;
}

giftAnimationPlayEnd = false;
//获取汽车动画布局
mGiftView = getLayoutInflater().inflate(R.layout.view_live_gift_animation_car_general, null);
AvatarView uHead = (AvatarView) mGiftView.findViewById(R.id.iv_animation_red_head);
TextView mname = (TextView) mGiftView.findViewById(R.id.tv_liwu_name);
mname.setText(sendGiftBean.getNicename());
uHead.setAvatarUrl(sendGiftBean.getAvatar());
//获取到汽车image控件
final ImageView redCar = (ImageView) mGiftView.findViewById(R.id.iv_animation_red_car);
//添加到当前页面
mLiveContent.addView(mGiftView);

final int vw = redCar.getLayoutParams().width;
//动画第二次
final Runnable carRunnable = new Runnable() {
@Override
public void run() {
//小汽车切换帧动画开始继续移动向-x
redCar.setImageResource(R.drawable.car_red1);
mGiftView.animate().translationX(~vw)
.withEndAction(new Runnable() {
@Override
public void run() {
//小汽车从底部重新回来切换帧动画
redCar.setImageResource(R.drawable.car_10001);
ObjectAnimator oX = ObjectAnimator.ofFloat(mGiftView, "translationX", mScreenWidth, mScreenWidth / 2 - vw / 2);
ObjectAnimator oY = ObjectAnimator.ofFloat(mGiftView, "translationY", mScreenHeight / 2, mScreenHeight >> 2);

                    //重新初始化帧动画参数
                    AnimatorSet animatorSet = new AnimatorSet();
                    animatorSet.playTogether(oX, oY);
                    animatorSet.setDuration(2000);
                    animatorSet.addListener(new Animator.AnimatorListener() {
                        @Override
                        public void onAnimationStart(Animator animation) {

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/912/viewspace-2799211/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-08-19

  • 博文量
    104
  • 访问量
    1057