Android App开发手机阅读之使用贝塞尔曲线实现给主播刷礼物特效(附源码和演示视频 简单易懂 可直接使用)

简介: Android App开发手机阅读之使用贝塞尔曲线实现给主播刷礼物特效(附源码和演示视频 简单易懂 可直接使用)

需要图片集和源码请点赞关注收藏后评论区留言~~~

贝塞尔曲线在App中还有一个常见应用,就像时兴的给主播打赏礼物,点击爱心打赏之后,图标会在屏幕上走出一条优雅的飘逸曲线,这个飘逸曲线在前进途中左右摇摆。具体到编码上,可将漂移动画的实现步骤分为以下几步

1:创建一个缩放动画 让礼物图标在爱心处从小变到大,呈现出礼物孵化效果

2:创建一个属性动画 指定礼物飘逸的起点和终点,并在动画过程中动态改变贝塞尔曲线的控制点

3:定义一个添加打赏的方法 该方法先把礼物图标添加到视图上 再依次播放前两步的缩放动画和属性动画

然后在布局文件中添加RewardView节点,并在对应的活动页面给爱心图标添加点击事件,每次点击爱心都调addGiftView方法添加打赏礼物,这样多次点击便会涌现多个礼物,同时每个礼物图标都沿着自己的曲线蜿蜒前行,从而实现打赏飘逸的动画特效

演示视频如下

 

给主播刷礼物

点击后礼物会摇摆上升

代码如下

Java类

package com.example.ebook;
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
import com.example.ebook.widget.RewardView;
public class BezierGiftActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_bezier_gift);
        RewardView rv_gift = findViewById(R.id.rv_gift);
        // 每次点击爱心图标,都往打赏视图上面添加礼物的漂移动画
        findViewById(R.id.iv_reward).setOnClickListener(v -> rv_gift.addGiftView());
    }
}

XML文件

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="请点击右边的红心图标"
        android:textColor="@color/black"
        android:textSize="17sp" />
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:gravity="right"
        android:layout_alignParentRight="true"
        android:layout_marginBottom="40dp">
        <com.example.ebook.widget.RewardView
            android:id="@+id/rv_gift"
            android:layout_width="100dp"
            android:layout_height="300dp"
            android:background="#fdfdfd"/>
        <ImageView
            android:id="@+id/iv_reward"
            android:layout_width="60dp"
            android:layout_height="60dp"
            android:layout_marginRight="20dp"
            android:src="@drawable/reward"/>
    </LinearLayout>
</RelativeLayout>

创作不易 觉得有帮助请点赞关注收藏~~~

相关文章
|
2月前
|
XML Java 数据库
安卓项目:app注册/登录界面设计
本文介绍了如何设计一个Android应用的注册/登录界面,包括布局文件的创建、登录和注册逻辑的实现,以及运行效果的展示。
196 0
安卓项目:app注册/登录界面设计
|
1月前
|
Android开发 数据安全/隐私保护 虚拟化
安卓手机远程连接登录Windows服务器教程
安卓手机远程连接登录Windows服务器教程
60 4
|
1月前
|
安全 搜索推荐 Android开发
Android vs. iOS:解锁智能手机操作系统的奥秘####
【10月更文挑战第21天】 在当今这个数字化时代,智能手机已成为我们生活中不可或缺的伙伴。本文旨在深入浅出地探讨两大主流操作系统——Android与iOS的核心差异、优势及未来趋势,帮助读者更好地理解这两个平台背后的技术哲学和用户体验设计。通过对比分析,揭示它们如何塑造了我们的数字生活方式,并展望未来可能的发展路径。无论您是技术爱好者还是普通用户,这篇文章都将带您走进一个充满创新与可能性的移动世界。 ####
72 3
|
2月前
|
Ubuntu Linux Android开发
termux+anlinux+Rvnc viewer来使安卓手机(平板)变成linux服务器
本文介绍了如何在Android设备上安装Termux和AnLinux,并通过这些工具运行Ubuntu系统和桌面环境。
166 2
termux+anlinux+Rvnc viewer来使安卓手机(平板)变成linux服务器
|
3月前
|
开发工具
uniapp, 短剧视频类App实现参考,支持滑动播放,仿抖音 仿陌陌 短视频 无限滑动播放 视频流
阿里云点播服务web播放器sdk,短剧视频类App实现参考。仿抖音 仿陌陌 短视频 无限滑动播放 视频流。无uniapp video 原生组件的层级、遮挡、覆盖问题,适合与不同功能视图组合使用,实现丰富的应用功能。
uniapp, 短剧视频类App实现参考,支持滑动播放,仿抖音 仿陌陌 短视频 无限滑动播放 视频流
|
2月前
|
Web App开发 Android开发
利用firefox调试安卓手机端web
该教程详细介绍如何通过Firefox浏览器实现手机与电脑的远程调试。手机端需安装最新版Firefox,并按指定步骤设置完成;电脑端则需安装15版及以上Firefox。设置完成后,通过工具栏中的“远程调试”选项,输入手机IP地址即可连接。连接确认后,即可使用电脑端Firefox调试器调试手机上的Web信息。注意,调试前手机需提前打开目标网页。
99 2
|
2月前
|
Android开发 iOS开发 UED
安卓与iOS的较量:谁才是智能手机市场的王者?
本文将深入探讨安卓和iOS两大智能手机操作系统之间的竞争关系,分析它们各自的优势和劣势。通过对比两者在市场份额、用户体验、应用生态等方面的表现,我们将揭示出谁才是真正的市场领导者。无论你是安卓粉丝还是iOS忠实用户,这篇文章都将为你提供一些有趣的观点和见解。
|
2月前
|
安全 网络安全 Android开发
深度解析:利用Universal Links与Android App Links实现无缝网页至应用跳转的安全考量
【10月更文挑战第2天】在移动互联网时代,用户经常需要从网页无缝跳转到移动应用中。这种跳转不仅需要提供流畅的用户体验,还要确保安全性。本文将深入探讨如何利用Universal Links(仅限于iOS)和Android App Links技术实现这一目标,并分析其安全性。
374 0
|
3月前
|
XML 数据库 Android开发
10分钟手把手教你用Android手撸一个简易的个人记账App
该文章提供了使用Android Studio从零开始创建一个简单的个人记账应用的详细步骤,包括项目搭建、界面设计、数据库处理及各功能模块的实现方法。
|
6月前
|
网络协议 Android开发 数据安全/隐私保护
Android手机上使用Socks5全局代理-教程+软件
Android手机上使用Socks5全局代理-教程+软件
5045 2
下一篇
DataWorks