3

我想在 Android 中实现一些非标准的东西。

我已经在WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY所有东西的顶部创建了透明的系统覆盖()GLSurfaceView(然后我将其更改为画布),并且我正在尝试在其上绘制一些东西。

问题是当试图将我的透明层与它下面的其他东西混合时,Android 变得非常慢。我知道这个操作会很慢,但是慢。我在或多或少的功率设备上进行了测试。

几个事实和观察:

  • 我的叠加视图是全屏的
  • 即使我不绘制任何要覆盖的内容,系统也会变慢
  • 我的 Acer Iconia 选项卡 (10") 运行速度比我的 Droid X 慢得多(要混合的像素更多?还是新的渲染管道?)
  • 如果我使用带有透明 PNG 的静态ImageView元素,那么 Android 可以毫无问题地混合它。为什么?Android 会检查每一帧的混合内容吗?
  • 在平板电脑上启用硬件加速没有效果

我的问题:是否有可能以某种方式对其进行优化?我将 View 的背景设置为 null 但没有效果。

Android 4.0 会像 3.2 一样慢吗?

当它在主屏幕上混合系统覆盖时,它特别慢。为什么?

请不要告诉我我写错了东西,并将 API 用于指定目的以外的东西,我已经意识到这一点。

4

0 回答 0