Android 在requestLayout()之后使()无效?

Android 在requestLayout()之后使()无效?,android,Android,在我的自定义Android视图中,在更改布局参数后,我将在某个时候调用requestLayout()。我正在重写onDraw(…),因此我还需要确保调用了invalidate() 但是,是否需要在requestLayout()之后调用invalidate() 说我没有,我相信Android会在requestLayout()之后为我做这件事。可能是我在布局参数中所做的更改根本没有改变。Android会检测到这一点并避免在这种边缘情况下调用invalidate(),还是我保证无论发生什么情况都会调用

在我的自定义Android视图中,在更改布局参数后,我将在某个时候调用
requestLayout()
。我正在重写
onDraw(…)
,因此我还需要确保调用了
invalidate()

但是,是否需要在
requestLayout()
之后调用
invalidate()

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


编辑:这不是的副本。我特别询问Android代码中是否有一些豁免,例如,
if(newWidth==oldWidth&&newHeight==oldHeight)return;//无需失效?
即使我的布局参数没有更改,我仍然希望失效。换句话说,Android docs某处是否保证会发生无效?

我认为这足够了-您可以检查
isDirty
,然后决定是否调用
invalidate
。我相信,
invalidate
不要检查任何东西。我想这会对你有帮助。。!