我们接着前两篇继续分析:
Android14 Launcher3 定制主页丝滑使用Recents功能 (一)
Android14 Launcher3 定制主页丝滑使用Recents功能 (二)
一、Launcher3修改
1、修改最近任务页面清单配置
1)、清单xml修改
./packages/apps/Launcher3/quickstep/AndroidManifest.xml
修改前:
<activity android:name="com.android.quickstep.RecentsActivity"
android:excludeFromRecents="true"
android:launchMode="singleTask"
android:clearTaskOnLaunch="true"
android:stateNotNeeded="true"
android:theme="@style/LauncherTheme"
android:screenOrientation="unspecified"
android:configChanges="keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenSize|screenLayout|smallestScreenSize"
android:resizeableActivity="true"
android:resumeWhilePausing="true"
android:taskAffinity=""/>
修改后:
<activity android:name="com.android.quickstep.RecentsActivity"
android:excludeFromRecents="true"
android:launchMode="singleTask"
android:clearTaskOnLaunch="true"
android:stateNotNeeded="true"
android:theme="@style/RecentsTheme"
android:screenOrientation="unspecified"
android:configChanges="keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenSize|screenLayout|smallestScreenSize"
android:resizeableActivity="true"
android:resumeWhilePausing="false"
android:taskAffinity=""
android:windowAnimationStyle="@style/NoAnimation" />
修改patch:
android:launchMode="singleTask"
android:clearTaskOnLaunch="true"
android:stateNotNeeded="true"
- android:theme="@style/LauncherTheme"
+ android:theme="@style/RecentsTheme"
android:screenOrientation="unspecified"
android:configChanges="keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenSize|screenLayout|smallestScreenSize"
android:resizeableActivity="true"
- android:resumeWhilePausing="true"
- android:taskAffinity=""/>
+ android:resumeWhilePausing="false"
+ android:taskAffinity=""
+ android:windowAnimationStyle="@style/NoAnimation" />
修改说明:
指定窗口动画为NoAnimation,不给窗口指定动画
指定theme为RecentsTheme,里面设置了背景图片
2)、style修改
修改前的theme为:LauncherTheme
./packages/apps/Launcher3/res/values/styles.xml
<!-- Launcher theme -->
<style name="BaseLauncherTheme" parent="@android:style/Theme.DeviceDefault.Light">
<item name="disabledIconAlpha">.54</item>
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="android:colorEdgeEffect">#FF757575</item>
<item name="android:windowActionBar">false</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowShowWallpaper">true</item>
</style>
<style name="LauncherTheme" parent="@style/BaseLauncherTheme">
<item name="android:textColorSecondary">#DE000000</item>
<item name="allAppsScrimColor">?attr/materialColorSurfaceDim</item>
<item name="allappsHeaderProtectionColor">@color/popup_color_tertiary_light</item>
<item name="allAppsNavBarScrimColor">#66FFFFFF</item>
<item name="popupColorPrimary">@color/popup_color_primary_light</item>
<item name="popupColorSecondary">@color/popup_color_secondary_light</item>
<item name="popupColorTertiary">@color/popup_color_tertiary_light</item>
<item name="popupColorBackground">#EFEDED</item>
<item name="popupTextColor">@color/popup_text_color_light</item>
<item name="popupShadeFirst">@color/popup_shade_first_light</item>
<item name="popupShadeSecond">@color/popup_shade_second_light</item>
<item name="popupShadeThird">@color/popup_shade_third_light</item>
<item name="popupNotificationDotColor">@color/popup_notification_dot_light</item>
<item name="notificationDotColor">@color/notification_dot_color_light</item>
<item name="isMainColorDark">false</item>
<item name="isWorkspaceDarkText">false</item>
<item name="workspaceTextColor">@color/workspace_text_color_light</item>
<item name="workspaceShadowColor">#B0000000</item>
<item name="workspaceAmbientShadowColor">#40000000</item>
<item name="workspaceKeyShadowColor">#89000000</item>
<item name="workspaceStatusBarScrim">@drawable/workspace_bg</item>
<item name="widgetsTheme">@style/WidgetContainerTheme</item>
<item name="folderPaginationColor">@color/folder_pagination_color_light</item>
<item name="folderPreviewColor">@color/folder_preview_light</item>
<item name="folderBackgroundColor">@color/folder_background_light</item>
<item name="folderIconBorderColor">?android:attr/colorPrimary</item>
<item name="isFolderDarkText">true</item>
<item name="folderTextColor">@color/folder_text_color_light</item>
<item name="folderHintTextColor">@color/folder_hint_text_color_light</item>
<item name="loadingIconColor">#CCFFFFFF</item>
<item name="iconOnlyShortcutColor">?android:attr/textColorSecondary</item>
<item name="eduHalfSheetBGColor">?android:attr/colorAccent</item>
<item name="workspaceAccentColor">@color/workspace_accent_color_light</item>
<item name="workspaceSurfaceColor">@color/workspace_surface_color</item>
<item name="dropTargetHoverTextColor">@color/drop_target_hover_text_color_light</item>
<item name="dropTargetHoverButtonColor">@color/drop_target_hover_button_color_light</item>
<item name="overviewScrimColor">@color/overview_scrim</item>
<item name="preloadIconAccentColor">@color/preload_icon_accent_color_light</item>
<item name="preloadIconBackgroundColor">@color/preload_icon_background_color_light</item>
<item name="android:windowTranslucentStatus">false</item>
<item name="android:windowTranslucentNavigation">false</item>
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:statusBarColor">#00000000</item>
<item name="android:navigationBarColor">#00000000</item>
<item name="android:switchStyle">@style/SwitchStyle</item>
<item name="materialColorOnSecondaryFixedVariant">@color/material_color_on_secondary_fixed_variant</item>
<item name="materialColorOnTertiaryFixedVariant">@color/material_color_on_tertiary_fixed_variant</item>
<item name="materialColorSurfaceContainerLowest">@color/material_color_surface_container_lowest</item>
<item name="materialColorOnPrimaryFixedVariant">@color/material_color_on_primary_fixed_variant</item>
<item name="materialColorOnSecondaryContainer">@color/material_color_on_secondary_container</item>
<item name="materialColorOnTertiaryContainer">@color/material_color_on_tertiary_container</item>
<item name="materialColorSurfaceContainerLow">@color/material_color_surface_container_low</item>
<item name="materialColorOnPrimaryContainer">@color/material_color_on_primary_container</item>
<item name="materialColorSecondaryFixedDim">@color/material_color_secondary_fixed_dim</item>
<item name="materialColorOnErrorContainer">@color/material_color_on_error_container</item>
<item name="materialColorOnSecondaryFixed">@color/material_color_on_secondary_fixed</item>
<item name="materialColorOnSurfaceInverse">@color/material_color_on_surface_inverse</item>
<item name="materialColorTertiaryFixedDim">@color/material_color_tertiary_fixed_dim</item>
<item name="materialColorOnTertiaryFixed">@color/material_color_on_tertiary_fixed</item>
<item name="materialColorPrimaryFixedDim">@color/material_color_primary_fixed_dim</item>
<item name="materialColorSecondaryContainer">@color/material_color_secondary_container</item>
<item name="materialColorErrorContainer">@color/material_color_error_container</item>
<item name="materialColorOnPrimaryFixed">@color/material_color_on_primary_fixed</item>
<item name="materialColorPrimaryInverse">@color/material_color_primary_inverse</item>
<item name="materialColorSecondaryFixed">@color/material_color_secondary_fixed</item>
<item name="materialColorSurfaceInverse">@color/material_color_surface_inverse</item>
<item name="materialColorSurfaceVariant">@color/material_color_surface_variant</item>
<item name="materialColorTertiaryContainer">@color/material_color_tertiary_container</item>
<item name="materialColorTertiaryFixed">@color/material_color_tertiary_fixed</item>
<item name="materialColorPrimaryContainer">@color/material_color_primary_container</item>
<item name="materialColorOnBackground">@color/material_color_on_background</item>
<item name="materialColorPrimaryFixed">@color/material_color_primary_fixed</item>
<item name="materialColorOnSecondary">@color/material_color_on_secondary</item>
<item name="materialColorOnTertiary">@color/material_color_on_tertiary</item>
<item name="materialColorSurfaceDim">@color/material_color_surface_dim</item>
<item name="materialColorSurfaceBright">@color/material_color_surface_bright</item>
<item name="materialColorOnError">@color/material_color_on_error</item>
<item name="materialColorSurface">@color/material_color_surface</item>
<item name="materialColorSurfaceContainerHigh">@color/material_color_surface_container_high</item>
<item name="materialColorSurfaceContainerHighest">@color/material_color_surface_container_highest</item>
<item name="materialColorOnSurfaceVariant">@color/material_color_on_surface_variant</item>
<item name="materialColorOutline">@color/material_color_outline</item>
<item name="materialColorOutlineVariant">@color/material_color_outline_variant</item>
<item name="materialColorOn
© 版权声明
文章版权归作者所有,未经允许请勿转载。如内容涉嫌侵权,请在本页底部进入<联系我们>进行举报投诉!
THE END






















暂无评论内容