繁体   English   中英

如何绘制外部视图边界?

[英]How to draw outside view bounds?

如何在视图范围之外绘制(位图,线等)? 从视图的onDraw(),我已经读过这是不可能的,因为绘制的所有内容都会被剪切到视图的边界。

我确实提出了一个解决方案,但我希望有一个更好的解决方案。 什么工作是创建一个位于z顺序顶部的透明视图,并包括我想要绘制的区域(整个应用程序客户区)。 然后,每当我想在一些子视图外面绘制时,我可以简单地将坐标转换为透明视图并在那里绘制。

我还读到了有关SurfaceView希望能够做到我想要的东西。 但我认为它的主要目的是在单独的线程中提供绘图,而不是解决我正在讨论的问题。

要清楚,仅仅绘制目标视图的父级是不够的,因为父级中的其他视图将在z顺序中更高并隐藏绘图。

直觉告诉我这是一个“正确的方法”。 谁知道?

我得出的结论是,正确的方法是做我提出的建议 - 创建一个透明视图,它位于z-order的顶部,用于您需要绘制的空间。

在了解了导航抽屉绘图的工作原理之后,我得出了这个结论 - 正是以这种方式。 因此,如果谷歌使用这种技术,我得出结论,这是最好的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM