【问题标题】:Drawing a Large Bitmap Background to SurfaceView Android为 SurfaceView Android 绘制大位图背景
【发布时间】:2012-02-05 01:50:17
【问题描述】:

我正在尝试找到最佳方式(性能方面)在 Android 中将大的 Bitmap 绘制到 SurfaceView 作为固定背景图像。我目前只使用Canvas.drawBitmap() 方法,但它使我的 FPS 下降了很多。有哪些方法可以加快速度?

【问题讨论】:

    标签: java android bitmap surfaceview


    【解决方案1】:

    尝试使用不透明图像并将 Paint 上的 Xfermode 设置为 null 或 PorterDuff.Mode.SRC。这将禁用可能很昂贵的混合。还要确保您的图像没有被拉伸(没有缩放)并且它的格式与表面视图的表面相同。

    【讨论】:

    • 谢谢我采纳了你的建议,他们给了我大约 5-10 FPS。它平稳地运行了大约 10 秒,然后经历了一个延迟,导致游戏崩溃了很多!降低到大约 10 FPS。有任何想法吗?当我不绘制背景图像时,不会发生这种滞后。
    【解决方案2】:

    如果您的背景是静态的,那么您可以尝试将布局的背景设为背景图片。然后把su​​rfaceView背景设为透明:

    how to make surfaceview transparent

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多