gpt4 book ai didi

java - 使用 lockCanvas() 的 Android TextureView 硬件加速

转载 作者:IT老高 更新时间:2023-10-28 23:33:58 27 4
gpt4 key购买 nike

我正在尝试在我的 Canvas 上使用适用于 Android 的硬件加速。我曾经有一个 SurfaceView ,我在上面做了 lockCanvas() 以获得后来绘制的 Canvas ,但我改为 TextureView 因为我无法让 SurfaceView 使用硬件加速。我目前正试图让这个 Canvas 使用硬件加速。

Canvas canvas = this.lockCanvas();
System.out.println(this.isHardwareAccelerated() + ", " + canvas.isHardwareAccelerated());

给我输出:真,假(this 是一个 TextureView)

有谁知道为什么 canvas 没有硬件加速,以及如何做到这一点?

编辑:据我发现,似乎我必须使用 OpenGL。但是,我仍然想知道是否有任何已宣布的计划为这样的 Canvas 提供硬件加速。

最佳答案

TextureView 仅在应用程序被硬件加速时工作,但它从 lockCanvas() 返回的 Canvas 当前从未被硬件加速。这意味着您将在软件中在 TextureViewCanvas 内进行绘制,但 TextureView 本身将使用 GPU 进行绘制。目前,获得硬件加速 Canvas 的唯一方法是使用 View 的 onDraw(Canvas) 方法。

关于java - 使用 lockCanvas() 的 Android TextureView 硬件加速,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9966228/

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