requestLayout()之后invalidate()?

时间:2017-01-31 10:10:40

标签: android

在我的自定义Android视图中,在我更改了布局参数后,我会在某个时候致电requestLayout()。我已覆盖onDraw(...),因此我还需要确保调用invalidate()

但是,是否有必要在invalidate()之后致电requestLayout()

说我没有,我相信Android会在requestLayout()之后为我做这件事。可能是我在布局参数中发生的变化根本没有改变。 Android是否会检测到这种情况并避免在此边缘情况下调用invalidate(),或者我保证无论如何都会调用invalidate()

编辑:这不是Usage of forceLayout(), requestLayout() and invalidate()的重复。我特别询问Android代码中是否有一些免税,例如if (newWidth == oldWidth && newHeight == oldHeight) return; // no need to invalidate?即使我的布局参数没有改变,我仍然希望无效。换句话说,Android文档在哪里保证会发生失效?

0 个答案:

没有答案