Android N 固定壁纸大小不拉伸
16lz
2021-01-23
--- a/frameworks/base/packages/SystemUI/src/com/android/systemui/ImageWallpaper.java+++ b/frameworks/base/packages/SystemUI/src/com/android/systemui/ImageWallpaper.java@@ -454,7 +454,8 @@ public class ImageWallpaper extends WallpaperService { // Center the scaled image mScale = Math.max(1f, Math.max(dw / (float) mBackground.getWidth(), dh / (float) mBackground.getHeight()));- mScale = dw / (float) mBackground.getWidth();+ //mScale = dw / (float) mBackground.getWidth(); final int availw = dw - (int) (mBackground.getWidth() * mScale); final int availh = dh - (int) (mBackground.getHeight() * mScale); int xPixels = availw / 2;@@ -463,13 +464,16 @@ public class ImageWallpaper extends WallpaperService { // Adjust the image for xOffset/yOffset values. If window manager is handling offsets, // mXOffset and mYOffset are set to 0.5f by default and therefore xPixels and yPixels // will remain unchanged- final int availwUnscaled = (int)((float)dw/mScale) - mBackground.getWidth();- final int availhUnscaled = (int)((float)dh/mScale) - mBackground.getHeight();-+ final int availwUnscaled = dw - mBackground.getWidth();+ final int availhUnscaled = dh - mBackground.getHeight();+ //End if (availwUnscaled < 0)- xPixels += (int) (availwUnscaled * (mXOffset - .5f) * mScale + .5f);+ xPixels += (int) (availwUnscaled * (mXOffset - .5f) + .5f); if (availhUnscaled < 0)- yPixels += (int) (availhUnscaled * (mYOffset - .5f) * mScale + .5f);+ yPixels += (int) (availhUnscaled * (mYOffset - .5f) + .5f); mOffsetsChanged = false; if (surfaceDimensionsChanged) {
更多相关文章
- 代码中设置drawableleft
- android 3.0 隐藏 系统标题栏
- Android开发中activity切换动画的实现
- Android(安卓)学习 笔记_05. 文件下载
- Android中直播视频技术探究之—摄像头Camera视频源数据采集解析
- 技术博客汇总
- android 2.3 wifi (一)
- AndRoid Notification的清空和修改
- Android中的Chronometer