onDraw 无法正常工作
onDraw doesn't work properly
我用一个新的覆盖了 RelativeLayout class:
public class myRelative extends RelativeLayout{
//...
//this function is called but layout is not filled
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
super.onDraw(canvas);
canvas.drawColor(Color.WHITE);
}
//...
}
XML 文件如下所示:
<myRelative
android:id="@+id/someid"
android:clipChildren="false"
android:clipToPadding="false"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
....
</....>
此布局的行为与往常一样RelativeLayout
?为什么什么都没有改变?有什么想法吗?
尝试在自定义视图的所有构造函数中设置 setWillNotDraw(false);
。或者您的自定义视图可能位于 xml 中,其中父视图也有 WHITE
背景。
布局有特殊优化。如果没有设置背景,则不会调用 onDraw,因为布局应该是一个空视图。每次只调用dispatchDraw
我用一个新的覆盖了 RelativeLayout class:
public class myRelative extends RelativeLayout{
//...
//this function is called but layout is not filled
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
super.onDraw(canvas);
canvas.drawColor(Color.WHITE);
}
//...
}
XML 文件如下所示:
<myRelative
android:id="@+id/someid"
android:clipChildren="false"
android:clipToPadding="false"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
....
</....>
此布局的行为与往常一样RelativeLayout
?为什么什么都没有改变?有什么想法吗?
尝试在自定义视图的所有构造函数中设置 setWillNotDraw(false);
。或者您的自定义视图可能位于 xml 中,其中父视图也有 WHITE
背景。
布局有特殊优化。如果没有设置背景,则不会调用 onDraw,因为布局应该是一个空视图。每次只调用dispatchDraw