本文實例講述了Android7.0開發實現Launcher3去掉應用抽屜的方法。分享給大家供大家參考,具體如下:
年初做過一個項目,有一個需求就是需要將桌面變為單層不需要二級菜單。最近幾次有小伙伴有這個問我這個解決辦法。現在我將分享給大家。
先上效果圖:

功能分解
1. 去除Allapp鍵,調整HotSeat布局
2. 將所有應用擺在launcher第一層
3. 去掉長按時刪除選項
解決方案
一、設置總開關
按照6.0 Launcher3 的模式,添加一個開關,控制是否去掉抽屜。
LauncherAppState類:單例模式,主要在啟動的時候用,他初始化了一些對象,并且注冊了廣播監聽器和ContentObserver。為了能靈活切換模式,在此類中添加靜態開關。
Launcher3/src/com/android/launcher3/LauncherAppState.java:
public static boolean isDisableAllApps() { // Returns false on non-dogfood builds. return android.os.SystemProperties.get("ro.wind.launcher3.ishome2","0").equals("1");}二、Allapp鍵的加載
在HotSeat里面去掉Allapp鍵的加載 ,屏蔽isAllAppsButtonRank()占用allapp位置。
1) 不再占用allapp位置
2) 在加載Workspace時,會留出HotSeat的第三個位置給allapp按鈕,若不取消該位置的占用,在HotSeat加載時會留出空位。HotSeat的初始化在HotSeat.java中
Launcher3/src/com/android/launcher3/HotSeat.java 主站蜘蛛池模板: 隆化县| 襄垣县| 潮州市| 泗水县| 桓台县| 甘孜| 南投县| 松滋市| 宁安市| 宣化县| 深水埗区| 客服| 柘荣县| 福海县| 福鼎市| 巴青县| 台北县| 阿拉尔市| 桓仁| 蒲城县| 原阳县| 剑河县| 临清市| 凤台县| 前郭尔| 黄浦区| 达州市| 高邮市| 个旧市| 涿州市| 满城县| 大同市| 南平市| 双流县| 黄陵县| 南靖县| 台山市| 旅游| 修水县| 曲靖市| 临颍县|