我的视图中有一些方法可以修改调用时绘制的一些形状。在 Java 中,为了确保组件已更新,我会调用repaint()
。有什么可以确保我的视图正确更新吗?
我曾在某处读到过这样的呼唤invalidate()
in the onDraw()
方法将使事情保持最新,因此我不需要类似的东西repaint()
在我的方法中修改绘制的形状。
这是正确的吗,还是我还需要做其他事情?
EDIT
添加一个示例,我在我的视图中调用的方法是:
public void setLineThickness(int thickness) {
aLineThickness = thickness;
if(aLineThicness > 1)
//repaint(); - Okay in Java but not in Android
}
Calling 无效() http://developer.android.com/reference/android/view/View.html#invalidate%28%29会告诉视图它需要在将来的某个时候重绘自己(调用 onDraw)。因此,如果您更改视图中的某些内容(例如线条粗细),请在其后调用 invalidate() 。这样您就知道您的视图最终会更新。
所有绘图代码都应该在 onDraw() 中实现,而其他方法应该只更改视图的状态,然后在调用 invalidate() 后使用该状态来绘制视图。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)