标签:android android-layout surfaceview
This answer描述了如何使用透明背景制作SurfaceView.
但是它需要在SurfaceView上调用setZOrderOnTop(true),这不足为奇地将SurfaceView放在其他视图之上.
这不是我想要的.给定视图A,C和SurfaceView B我想将视图命名为C后面的A后面C.
如果B不是具有透明背景的SurfaceView,那么这只是:
<RelativeLayout>
<ViewA>
<ViewB>
<ViewC>
</RelativeLayout>
当B是具有透明背景的SurfaceView时,是否可以实现此目的?
解决方法:
当前的SurfaceView API有四个可能的层.从上到下:
> setZOrderOnTop
>(观看次数)
> setZOrderMediaOverlay
>默认
SurfaceView曲面和包含所有视图的曲面由系统合成器合成.你不能在两个视图之间将Z-order三明治夹在中间. (如果您需要完整的详细信息,请阅读this article.另请参阅Grafika中的多表面测试活动,该软件将渲染为三个重叠的透明SurfaceView.)
您可能想要做的是使用TextureView(API 14),它具有许多相同的属性,但与视图完全交互.如果您使用Canvas在SurfaceView上绘图,则可以使用自定义视图,该视图具有hardware accelerated渲染的附加优势.
标签:android,android-layout,surfaceview 来源: https://codeday.me/bug/20190609/1207382.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。