开发Android APP的同学是否对于Launcher实现的绚丽效果而痴迷呢?什么。连Android Launcher是什么都不知道。好吧,拿起侬的手机。在解锁后的首页界面上左右滑动滑动,体验体验,这个就是Launcher。
Launcher事实上也是一个APP,只是人家是系统级别的。尽管各个android手机厂商对Launcher的定制化程度比較高,可是为了避免用户使用的困惑。Launcher的操作和功能基本都几乎相同。
以下简介下Launcher桌面的几个共同特征。
1、分屏显示APP图标和名称
2、APP图标能够在当前屏幕中拖动,稍牛逼的能够跨屏拖动
3、在拖动过程中交换位置,出现一系列美丽的位移动画
4、拖动结束后。Lancher会记住又一次排列的位置
5、APP图标能够被删除。删除后,后面的图片会依次向前位移过去
6、横向滑动Launcher进行切屏,背景图片会联动起来
总结完成,介绍那么多。都是为了今天的干货做衬托。今天十足的干货,分量极沉。沉甸甸压得我一天都不得空暇,仅仅为挤出时间整理出实现的代码。以下介绍下今天干货相对于原生Launcher的优势。
1、分屏数能够无限扩展。能够为一屏。也能够为10屏,同一时候也不用为OOM烦恼。滑动也相当的流畅
2、每一个Item的图标能够为两张图片,一张Normal状态下显示,一张Press状态现实
3、动态设置每屏的行数和列数。演示样例代码使用的是4行2列,而且自己主动计算item的宽度和高度
4、动态设置Container的item总数,依据行数列数,自己主动计算页数
5、长按就可以进入编辑模式。点击就可以删除item;加入item也是相当的简单方便。
以下看下精巧的效果,想把玩一番的同学请去Github下载安装
今天代码都不贴了。源代码的凝视写的非常具体。相信阅读起来应该没有什么困难。
对于喜欢研究Android特效的同学和业务上有这样的需求的同学,相信今天的干货会帮助蛮大的。
为了效果上的美观,我A了上个东家的几张图。希望大家不要商用。仅供学习交流之用。
代码地址:https://github.com/JackCho/AndroidLauncher
假设认为对你有所帮助,欢迎大家订阅我的微信公众账号——Android干货分享(ID:android_share)。以下是微信的二维码。为你提供及时高质的Android干货。技术交流QQ群:318588906,欢迎大家加群,共同探讨下Android和Java技术,一起壮大我们的微信干货分享社区。