Launcher3的wallpaper显示是动态的,与Launcher预置桌面数目有关,让壁纸居中,只能确保第一次开机时壁纸居中,后面用户修改桌面数目后,就无法达到了。如何要在默认桌面数目配置时居中,可以参考下面方法,以default一屏为例:
Launcher3的workspace.java文件替换下面的函数
private void updateOffset(boolean force) {
if (mWaitingForUpdate || force) {
mWaitingForUpdate = false;
if (computeScrollOffset() && mWindowToken != null) {
try {
if (getChildCount() <= 1) {
mWallpaperManager.setWallpaperOffsets(mWindowToken,
/* mWallpaperOffset.getCurrX()*/0.5f, 0.5f);
}else{
mWallpaperManager.setWallpaperOffsets(mWindowToken,
mWallpaperOffset.getCurrX(), 0.5f);
}
setWallpaperOffsetSteps();
} catch (IllegalArgumentException e) {
}
}
}
}
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-09 23:58:25