gpt4 book ai didi

android - 使用代码调整壁纸大小?

转载 作者:行者123 更新时间:2023-11-30 04:30:38 29 4
gpt4 key购买 nike

你能告诉我根据设备是纵向还是横向模式使用代码调整主屏幕壁纸大小的最佳方法吗?

我们希望确保它能在许多设备上运行。

请提供代码示例。

我们目前正在使用它来设置壁纸:

myWallpaperManager.setResource(R.drawable.thewallpaper);

壁纸也是一个png文件。

更新:

根据 coder_for_life22 的代码,我将其更改为:

        try {
myWallpaperManager.setResource(R.drawable.kabaday1);

myCurrentImageName = "kabaday1";

Bitmap myBitmap = BitmapFactory.decodeResource(context.getResources(),
R.drawable.kabaday1);

Bitmap bitmapResized = Bitmap.createScaledBitmap(myBitmap, 600, 300,
false);

myWallpaperManager.setBitmap(bitmapResized);

} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

它缩放了图像,但 Android 正在重新显示和扩展图像,图像尺寸与缩小之前的图像尺寸相同,只是这次图像质量模糊,看起来仍然放大但没有显示应该缩小的整个图像。

奇怪的行为。也许我需要添加更多的代码,这样它才能真正缩小并保持清晰。至少我认为它应该这样做,因为图像应该更小。

有很多应用程序都在做同样的事情。我只希望知道他们是怎么做的。

谢谢。

最佳答案

您将需要使用此调整图像大小

 Bitmap bitmapResized = Bitmap.createScaledBitmap(src, dstWidth, dstHeight, filter);

myWallpaperManager.setBitmapResource(bitmapResized);

编辑:您可能还需要更改正在使用的 ImageView 的 scaleType。通过将其插入 imageview 所在的 xml 中。

  android:scaleType = "FIT_CENTER"

或者您可以通过将其插入到上述代码中以编程方式完成此操作。

myWallpaperManager.setScaleType(ImageView.FIT_CENTER);

这应该可以消除您正在获得的放大外观。

关于android - 使用代码调整壁纸大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7785199/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com