首页 > 其他分享 >Android Lottie动画库的导入与使用

Android Lottie动画库的导入与使用

时间:2023-05-16 19:12:29浏览次数:52  
标签:动画 app LaunchActivity import Android Lottie android

没想到又把安卓捡回来了,好长时间没碰这玩意但是大作业又不得不写......emmmm所以为了给大作业里的功能实现一个好看的UI界面还是得写个app出来。

不少app在启动时或者干别的什么活动时会有一个动画效果,这时候可以用Lottie库实现。

添加依赖

在build.gradle(:app)的dependencies添加以下一行代码

implementation "com.airbnb.android:lottie:5.2.0"

下载想要的动画

可以在Lottie Marketplace - Premium Lottie animations designed for Web & Mobile (lottiefiles.com)寻找喜欢的动画,下载一个json格式的lottie动画下来。

新建一个存放动画的文件夹asserts

回到Android Studio,右键app,按如下操作新建一个新的文件夹asserts

这里新建的文件夹asserts的位置是src\main\asserts

然后将刚刚下载好的json动画文件想办法扔进去就行了。

使用动画

现在动画已经扔进去了,可以直接用了。

我希望app启动时会显示出动画效果,此时我将app启动的activity设置为LaunchActivity,于是在它的布局文件activity_launch里可以直接这样写:

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/skyblue"
        tools:context=".LaunchActivity">
    <com.airbnb.lottie.LottieAnimationView
            app:lottie_fileName="lamp.json"
            android:layout_width="213dp"
            android:layout_height="238dp"
            app:lottie_autoPlay="true"
            app:lottie_loop="true" app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintTop_toTopOf="parent"/>

</androidx.constraintlayout.widget.ConstraintLayout>

在LaunchActivity.java里这样写(代码的功能是显示两秒界面,然后跳转到下一个activity即主界面里去)

package com.example.zzutablelamp;

import android.app.Activity;
import android.content.Intent;
import android.os.Handler;
import android.os.Bundle;

import static androidx.core.content.ContextCompat.startActivity;

public class LaunchActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_launch);

        Integer time = 2000;  //设置等待时间,单位为毫秒
        Handler handler = new Handler();
        //当计时结束时,跳转至主界面
        handler.postDelayed(new Runnable() {
            @Override
            public void run() {
                startActivity(new Intent(LaunchActivity.this, MainActivity.class));
                LaunchActivity.this.finish();
            }
        }, time);
    }
}

在虚拟机上运行,即可显示出动画效果。

标签:动画,app,LaunchActivity,import,Android,Lottie,android
From: https://www.cnblogs.com/soaring27221/p/17406538.html

相关文章

  • Android消息机制——Handler、Looper、MessageQueue
    最近在做毕设,关于android的,其中觉得android的消息机制很有意思,这里就写下自己的想法和Windows一样android也是消息驱动的。Android通过Handler和looper实现消息循环机制。一、Handler的创建每个Handler都会和一个线程和线程的messagequeue关联起来,此时你可以传递messages和runna......
  • android开发mac系统搭建flutter开发环境
    安装xcodemac系统自带的AppStore里搜索xcode安装即可安装JDKJDK下载地址:https://www.oracle.com/java/technologies/downloads/需要登录Oracle账号才能下载下载dmg文件之后双击安装即可安装AndroidStudio开发工具AndroidStudio下载地址:https://developer.android.goog......
  • 【android】手机亮屏锁定(安卓亮屏解锁)
    1、Android屏幕常亮/点亮//保持屏幕常亮PowerManagerpm=(PowerManager)getSystemService(Context.POWER_SERVICE);mWakeLock=pm.newWakeLock(PowerManager.FULL_WAKE_LOCK|PowerManager.ACQUIRE_CAUSES_WAKEUP,LOCK_TAG);mWakeLock.acquire();//释放屏幕常亮锁if(nu......
  • Android AVD创建及设置中各参数详解
    设置AVD时有些参数比较模糊,特地找了篇文章,大家参考下!本文根据如下的模拟器安装做一些解释:[color=red][b]Name[/b][/color]:自定义虚拟的名称,不能有空格或者其他非法字符,否则不能创建,即CreatAVD不能高亮点击。[color=red][b]Target[/b][/color]:选择要运行的android版本(也可理解......
  • Android AlertDialog 详解
    创建对话框一个对话框一般是一个出现在当前Activity之上的一个小窗口.处于下面的Activity失去焦点,对话框接受所有的用户交互.对话框一般用于提示信息和与当前应用程序直接相关的小功能.AndroidAPI支持下列类型的对话框对象:警告对话框AlertDialog: 一个可以有......
  • 在代码中实现android:tint效果
    Android着色效果tintAndroid有个tint的着色效果,这样有些纯色图片,如果需要显示别的颜色效果,直接加上就行,特别方便。这个网上一搜就有,效果如图:android:tint="@color/x"我这个原本是个黑色的图标,加上这句,就可以显示各种颜色。使用很简单,直接在XML加上android:tint="@co......
  • android 获取 imei号码
    核心代码:Imei=((TelephonyManager)getSystemService(TELEPHONY_SERVICE)).getDeviceId();1.加入权限在manifest.xml文件中要添加<uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>2.代码 1./**2.*3.*4.*创建日期2010-4-29下午05:02......
  • 最新Android开发环境(Eclipse+ADT+Android 5.0)
     一、一切由运行时错误引起dalvikvmCouldnotfindclass'引用包.类',referencedfrommethod... 其实在编译时也会见到如下错误:      [dx]       [dx]troubleprocessing:      [dx]badclassfilemagic(cafebabe)orversion(0033.00......
  • Android滑动卡片视图:Sliding-deck
    Sliding-deck提供了一个直观的用户操作控件,可以滑动删除,快速预览。如果你想要一个view的堆叠效果而又不想让代码变复杂,这就是你需要的解决方案。使用说明:1.-配置项目依赖把 librarydependency添加到 build.gradle文件。dependencies{...compile'com.re......
  • Android滑动卡片效果:Swipecards
    一个类似于Tinder的Android库,用于创建滑动卡片效果。您可以向左或向右滑动来切换喜欢或不喜欢的内容。 //implementtheonFlingListenerpublicclassMyActivityextendsActivity{...@OverrideprotectedvoidonCreate(BundlesavedInstanceState){......