gpt4 book ai didi

android - 是否可以使用 32 位 (ARGB_8888) 表面格式的动态壁纸?

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

在渲染我的动态壁纸时,我有一些 strip 渐变伪像。 This article完美地解释了这背后的原因:为了消除其中的大部分并提高效率,我可以在 32 位位图之上绘制 32 位位图:)

所以我问自己一个问题:动态壁纸如何做到这一点?并没有找到答案 :)在动态壁纸中,我们有一个由 android 框架为我们创建的表面。它恰好是一个 RGB_565 表面,因为:

// code inside my WallpaperService.Engine subclass
public void onSurfaceChanged(SurfaceHolder holder, int format, int width, int height)
{
Log.d("test", "format is: "+format); // => prints 4, which is PixelFormat.RGB_565
}

而且我似乎无法要求 Android 框架将其更改为 ARGB_8888。或者有吗?

附言当然我知道我可以做上面文章中描述的其他事情,比如应用抖动等,所以请不要费心指点我这个。我想找到我提出的问题的确切答案:)

最佳答案

在 onCreate() 中设置 PixelFormat

holder.setFormat(PixelFormat.RGBA_8888);

关于android - 是否可以使用 32 位 (ARGB_8888) 表面格式的动态壁纸?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10412420/

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