1

我的理解是,基于此讨论,您不能在 Android 中叠加两个表面视图:

https://groups.google.com/forum/?fromgroups=#!topic/android-developers/COffLpanlz0

进一步证明这不起作用: GLSurfaceView/SurfaceView 重叠

但是我想知道这里是否有解决方法?或者,如果 Android 4.1 改变了这种情况?

谷歌框架工程师的唯一建议如下所示:有谁知道这将如何完成?或者是否有任何其他方法可以实现这一目标?

" 这可能不是最好的方法,但现在你根本不能在一个窗口中有多个重叠的表面视图,所以实现这一点的唯一方法是在主窗口中渲染覆盖。仅供参考,使用单独的线程和 postInvalidate( ) 是不需要的额外工作,只需从主线程调用 invalidate() 即可。并且您需要确保至少与绘制叠加层有关的视图层次结构部分尽可能简单(不深和没有太多需要迭代的视图)以尽可能减少开销。” - 显示引用的文字 - hac...@android.com

4

1 回答 1

1

对于 Android 4.0 及更高版本,您应该改用 TextureView。您可以将任意数量的 TextureView 堆叠在一起。您还可以为它们设置动画等。

于 2012-09-23T23:23:01.770 回答