SurfaceView上的Android EditText

时间:2013-03-22 19:37:30

标签: android user-interface android-edittext surfaceview

我有一个继承自SurfaceView的自定义View,我在同一个RelativeLayout中有EditText(自定义View和EditText都是布局xml中的兄弟)。 当我以EditWxt显示时,这样

setVisibility(View.VISIBLE);

自定义View接收onDraw(Canvas c)方法的连续调用。 有人知道为什么吗?我从未明确地调用invalidate()。

1 个答案:

答案 0 :(得分:0)

这里没有任何错误。这在正常行为中。 onDraw()被称为很多次,因为只要感觉需要显示更改,Android就会重新绘制您的活动。有许多复杂的内部算法可以决定重绘活动的时间和原因。 Android为我们照顾它,我们不需要担心它。

重绘一个活动后,它的所有子项也会重新绘制。这适用于所有视图而非自定义视图。请放心,您的代码没有任何问题。

有兴趣了解有关内部的更多信息吗?查看View类的source code