Android 12.0 Launcher3仿ios长按app图标实现抖动动画开始拖拽停止动画

news2024/11/20 20:21:37

1.概述

在12.0的系统rom定制化开发中,在对系统原生Launcher3的定制需求中,也有好多功能定制的,在ios等电子产品中
的一些好用的功能,也是可以被拿来借用的,所以在最近的产品开发需求中,需求要求模仿ios的
功能实现长按app图标实现抖动动画,接下来看如何分析该功能的实现.

效果图如图:

 

2.Launcher3仿ios长按app图标实现抖动动画开始拖拽停止动画的核心类

      packages\apps\Launcher3\src\com\android\launcher3\WorkspaceLayoutManager.java
       packages\apps\Launcher3\src\com\android\launcher3\touch\ItemLongClickListener.java
       packages\apps\Launcher3\src\com\android\launcher3\dragndrop\DragController.java

3.Launcher3仿ios长按app图标实现抖动动画开始拖拽停止动画的核心功能分析和实现
3.1 WorkspaceLayoutManager.java长按事件的分析

      public interface WorkspaceLayoutManager {
             default void addInScreen(View child, int container, int screenId, int x, int y,
             

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/484260.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Centos7快速安装Logstash 7.17.7并实现MySQL中数据导入Elasticsearch

可以通过以下命令在线安装 Logstash 7.17.7 sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch sudo rpm -ivh https://artifacts.elastic.co/downloads/logstash/logstash-7.17.7-x86_64.rpm安装完成后,需要添加环境变量 export PATH$PATH:…

ARM处理器的指令集(3)

ARM处理器的指令集 一、数据处理类指令 数据处理指令只能对寄存器的内容进行操作,而不能对内存中的数据进行操作,所以ARM数据处理指令均可以选择使用S后缀,以影响状态标志位。 影响状态标志位的命令: MOVS–>数据传送指令&am…

java servlet 农机租赁网站系统Myeclipse开发mysql数据库web结构jsp编程计算机网页项目

一、源码特点 java servlet 农机租赁网站系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助 系统采用 serlvetdaobean 模式开发 ,系统具有完整的源代码和数 据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,M…

[架构之路-179]-《软考-系统分析师》-19- 系统可靠性分析与设计 -1- 故障模型、可靠性模型、可靠性分析

目录 前言: 1 9 . 1 系统可靠性概述 19.1.1 系统故障模型 1. 在信息系统中,故障或错误有如下儿种表现形式: 2. 故障的缘由 3. 故障模型 (1)逻辑电路级的故障 (2) 数据结构级的故障 &a…

【大数据Hadoop】HDFS3.3.1-Datanode-DataStorage的实现原理

DataStorage的实现原理 前言Storage类继承关系StorageInfoStorage.StorageStateStorage.StorageDirectory文件夹操作加锁/解锁操作存储状态恢复操作 StorageDataStorage 前言 Datanode 最重要的功能就是管理磁盘上存储的 HDFS 数据块。Datanode 将这个管理功能切分为两个部分&…

确定不进来看看吗?详细讲解C语言文件操作(示例分析每个函数)

前言 🎈个人主页:🎈 :✨✨✨初阶牛✨✨✨ 🐻推荐专栏: 🍔🍟🌯 c语言初阶 🔑个人信条: 🌵知行合一 🍉本篇简介:>:讲解c语言中的文件操作,文件的读取,输入输出,流的概念…

【分布式搜索引擎03】

分布式搜索引擎03 11.9.数据聚合11.9.1.聚合的种类11.9.2.DSL实现聚合11.9.2.1.Bucket聚合语法11.9.2.2.聚合结果排序11.9.2.3.限定聚合范围11.9.2.4.Metric聚合语法11.9.2.5.小结 11.9.3.RestAPI实现聚合11.9.3.1.API语法11.9.3.2.业务需求11.9.3.3.业务实现 11.10.自动补全&a…

AMBA协议-AXI协议详解(读写时序、Outstanding、乱序传输、原子操作)

目录 1. AXI 写通道信号 1.1. 写地址通道信号 1.2. 写数据通道信号 1.3. 写response通道信号 1.5. 握手规则 1.4. AXI 写通道之间关系 2. AXI 读通道信号 2.1. 读地址通道信号 2.2. 读数据通道信号 2.3. AXI 读通道之间关系 3. AXI传输 3.1. AXI突发读传输 3.2. …

EventBus(事件总线)的使用和源码的简单解析

Google Guava EventBus(事件总线)的使用和源码的简单解析 什么是EventBus? 事件总线(EventBus)是一种广泛用于软件架构中的设计模式,用于实现解耦和松散耦合的通信机制。它可以帮助组织和管理应用程序中不同组件之间的通信&…

【SQL篇】面试之高级查询和连接

603 连续空余座位 select distinct c1.seat_id from Cinema c1 join Cinema c2 on abs(c2.seat_id-c1.seat_id) 1 where c1.free1 and c2.free1 order by c1.seat_id;总结 思路:为什么我们这里需要abs和distinct,如果是如下代码,为什么不可…

[架构之路-178]-《软考-系统分析师》-17-嵌入式系统分析与设计- 3- 分区操作系统(Partition Operating System)概述

目录: 本文概述: 1.1 什么是分区操作系统 1.2 分区操作系统出现背景 1. 前后台系统(Foreground/Background System) 2. 实时操作系统(RTOS) 本文概述: 随着嵌入式系统日趋复杂化以及对安全性要求的不断提高,采用空间隔离、时…

[计算机图形学]光场,颜色与感知(前瞻预习/复习回顾)

一、Light Field / Lumigraph—光场 1.我们看到的是什么 我们的眼睛能够把3D世界转换为2D的成像信号被我们感知,如上面第一幅图,这就是我们看到整个世界的过程,那么如果我们把之前记录的光的信息都完美的放在一个幕布上,那么我们…

第15章 信息(文档)和配置管理

文章目录 软件文档的分类(1)开发文档:描述开发过程 本身(2)产品文档:描述开发过程的 产物(3)管理文档:记录项目管理的信息 文档的质量可以分为四级(1&#xf…

第二十五章 刚体Rigidbody

在物理学中,静止和匀速直线运动是物体的平衡状态,如果给该物体施加某一个力的话,物体的平衡状态就会改变,当然这个真理的前提是理想状态。我们知道在现实世界中,由于重力和摩擦力的存在,任何一个物体都不可…

【SQL篇】窗口函数和公共表达式

1077 项目员工 III # Write your MySQL query statement below select project_id, employee_id from (select project_id, e.employee_id, rank() over(partition by project_id order by experience_years desc) as rkfrom Employee ejoin Project pon e.employee_id p.empl…

【Fluent】接着上一次计算的结果继续计算,利用计算过程中得到的物理场(温度、速度、压力等)插值Interpolate文件初始化模型的方法

一、问题背景 因为fluent中支持的初始化无非三种类型。 1、Standard initialization 标准初始化 2、Hybridinitialization 混合初始化 3、FMG initialization FMG初始化 另外,还可以用UDF通过坐标判断的方式予以初始化。 但是这些初始化方法都没办法利用以前计算过…

通关MyBatis(上)

作者:~小明学编程 文章专栏:spring框架 格言:热爱编程的,终将被编程所厚爱。 目录 什么是MyBatis 如何使用Mybatis 添加依赖 创建数据库 配置数据库连接字符串 MyBatis的操作流程 数据持久层 配置mybatis的xml文件 mapp…

Windows自动虚拟机WSL和VMware虚拟机兼容问题(此平台不支持虚拟化的 Intel VT-x/EPT)

问题背景与原因分析 在安装了WSL2之后,忽然发现VMware Workstation无法正常启动了。就是在开启虚拟机时遇到了这种情况: “ 此平台不支持虚拟化的 Intel VT-x/EPT” 问题描述:出现以上问题,发现WSL2和 VMware Workstation 是不兼…

idea使用git遇到的小问题

idea使用git遇到的小问题 前置说明颜色含义中文插件修改提交的用户名 前置说明 idea版本为2022专业版 github需要自己会科学上网 颜色含义 在idea中使用github后,会发现项目中会有各种各样的颜色,如图所示文件全为绿色 这颜色含义分别为:…

函数-函数递归及练习

目录 1、什么是递归? 2、递归的两个必要条件 3、递归的练习 3.1 接受一个整型值(无符号),按照顺序打印它的每一位 3.2 编写函数不允许创建临时变量,求字符串的长度 3.3 求第n个斐波那契数 3.4 字符串逆序&…