Android 9.0 Launcher3:代码实现全屏应用展示

34 下载量 136 浏览量 更新于2024-09-01 1 收藏 180KB PDF 举报
本文详细介绍了如何在Android 9.0的Launcher3中移除抽屉式显示,让用户能够一次性查看所有应用程序。这个教程针对的是MTK设备,因为提供的代码示例主要针对mediatek的proprietary packages中的Launcher3应用。 首先,作者提出了一个关键的修改思路:创建一个全局控制变量`sys.launcher3.is_full_app`,用于动态切换抽屉模式。这个变量可以在`LauncherAppState`类的静态方法`isDisableAllApps()`中进行设置,该方法检查系统设置中自定义的值是否为1,来决定是否启用或禁用抽屉显示。为了实现这个功能,开发者需要在`AndroidManifest-common.xml`文件中添加`WRITE_SETTINGS`权限,以便修改系统设置。 接下来,作者建议了以下步骤: 1. 增加布局:为了适应不同的模式,开发者需要准备两套布局,一套用于带有抽屉的界面,另一套则没有抽屉,可以根据`is_disable_all_apps`的状态动态切换。 2. 移除AllAppsButton:抽屉模式下通常包含一个“全部应用”按钮,这在无抽屉模式下不再需要,因此需要从布局中移除。 3. 整合图标:将原本在抽屉中的AllAppsContainerView中的图标加载到Workspace(主屏幕),这样用户可以直接在工作空间看到所有的应用图标。 4. 新安装应用处理:新安装的应用应该自动添加到工作空间,无需用户手动操作。 5. 改变删除行为:长按Workspace图标删除的功能需要调整为取消操作,以提供更直观的交互体验。 6. 屏蔽抽屉手势:避免用户误触上滑手势触发抽屉,提升用户体验。 7. 修改页面指示线:将页面指示线样式改为圆点,提升视觉一致性。 然后,作者给出了具体的代码实现部分,包括在`LauncherAppState`类中添加静态方法、在`AndroidManifest-common.xml`中配置权限以及在`SettingsActivity`中创建SwitchPreference让用户可以手动切换抽屉模式。 通过这些改动,用户能够在Android 9.0的Launcher3中获得更加直观和简洁的界面,所有应用一览无余,无需再通过抽屉式导航。这对于希望减少导航层级、提高效率的用户来说是一个有用的定制选项。