繁体   English   中英

Android Invalidate()仅单个视图

[英]Android Invalidate() only single view

我在RelativeLayout上有2个意见

我只需要在单个视图上调用(调用)onDraw

当我尝试view1.invalidate(); 它也调用(调用)onDraw(view2 draw)

该怎么办?

谢谢

如果在调用view1.invalidate();view1view2重叠view1.invalidate(); 它将view2.onDraw();重叠的每个View ..因此它将调用view2.onDraw(); 由于您使用的是RelativeLayout view1和view2可能会相互重叠。

我遇到了同样的问题。

最后,我发现在Android 2.3中禁用了绘图缓存。 由于没有缓存,因此每次视图都会重绘自身,即使其他视图无效。

要启用缓存,请使用:

setDrawingCacheEnabled(true)

这个问题太老了,但是当我搜索时,谷歌把它放在第一位。 我认为这对其他进入这里的人很有用。

暂无
暂无

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

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