仅使一个视图无效

时间:2019-05-19 10:43:06

标签: android view invalidation

我正在开发一个Android平台游戏,只是为了好玩。 我有两个重叠的视图,当我在其中一个中调用无效时,另一个视图也会重绘。 我不需要重新绘制第二个视图,只需要对其应用翻译,而无需重新绘制。我该如何实现?

1 个答案:

答案 0 :(得分:0)

如果在调用view1view2view1.invalidate();重叠,它将重画与其重叠的每个View ..因此它将调用{{1 }},并且由于您使用的是view2.onDraw(); RelativeLayoutview1可能彼此重叠。

通常,view2不能绘制“本身”,因为它依赖于其父对象(通过View方法对其进行裁剪和翻译Canvas)。无效要求整个视图树都无效。