当前位置: 首页 > news >正文

Android 13.0 Launcher3 禁止首屏时钟部件拖动到其他屏

1.概述

  在13.0的系统rom定制化开发中, 在系统Launcher3中,首页中间默认有个时钟部件来显示时间,并且可以任意拖拽到其他地方,如果拖动到其他屏显的很不美观,所以根据需要要求时钟部件
不能拖拽到其他屏,所以就要从拖拽开始处理,判断如果是时钟部件,就不让拖拽到其他屏,先从拖拽流程分析
然后实现禁止拖拽时钟weight的相关功能

2.Launcher3 禁止首屏时钟部件拖动到其他屏的核心代码

           packages/apps/Launcher3/src/com/android/launcher3/Workspace.java
           packages/apps/Launcher3/src/com/android/launcher3/dragndrop/DragController.java

3.Launcher3 禁止首屏时钟部件拖动到其他屏的核心功能分析

在Android手机上,我们通常说的桌面其实就是launcher,再往小了说就是:Workspace。Workspace是桌面在实现时的抽象定义。桌面上显示的应用图标、folder文件夹和weight小部
件等功能,在Launcher3中workspace的桌面显示的app hotseat都绑定到workspace中,然后显示的
在Launcher3中,workspace图标的拖拽事件通常由DragController类来处理,它是核心拖拽控制器基类,定义很多拖拽相关的公共方法,处理滑动事件等等
DropTarget:拖拽事件接口,在Workspace中有实现这个接口。其包含主要的拖拽事件:onDrop(拖拽结束松手的瞬间触发)、onDragEnter(进入拖拽触发)、onDragOver&#x

相关文章:

  • visual studio 2022 更改字体和大小
  • c 语言常见的易错题分析
  • localForage使用 IndexedDB / WebSQL存储
  • 数据结构---堆
  • 火柴人版王者-Java
  • JavaWeb后端数据库MySQL的使用
  • 【Qt之QFileInfo】使用
  • 智慧城市运营管理平台解决方案:PPT全文61页,附下载
  • java游戏制作-王者荣耀游戏
  • 基于单片机智能液位水位监测控制系统
  • 如何开发有趣而富有创意的营销小游戏
  • Java游戏制作——王者荣耀
  • 【人工智能Ⅰ】实验2:遗传算法
  • Docker部署Vue+Springboot项目
  • JMeter---BeanShell实现接口前置和后置操作
  • C语言常见算法
  • 【蓝桥杯】刷题
  • Table和HashBasedTable的使用案例
  • Vue实现可拖拽边界布局
  • 【Azure 架构师学习笔记】-Azure Storage Account(7)- 权限控制
  • 复原展出孙吴大墓,江苏首座考古博物馆将开放
  • 晋级四强!WTA1000罗马站:郑钦文2比0萨巴伦卡
  • 消息人士称泽连斯基已启程前往土耳其
  • 中国科学院院士、我国航天液体火箭技术专家朱森元逝世
  • 《歌手2025》公布首发阵容,第一期就要淘汰一人
  • 美政府以拨款为要挟胁迫各州服从移民政策,20个州联合起诉