自定义视图未被绘制,布局高度和宽度设置为match_parent:Android

时间:2014-06-25 15:21:41

标签: android android-layout android-linearlayout android-custom-view ondraw

我有自定义视图,我在其中心画一个圆圈。 我有一个固定的半径,这个圆基于中心X,Y绘制,计算为

X = getMeasuredWidth()/2;
Y = getMeasuredHeight/2;

现在我的中心坐标计算完毕后,画出圆圈。 所有上述情况都发生在onDraw()方法中,因为它知道它的高度和宽度。 这很好用。

但现在我有一个线性布局,我想以编程方式逐个添加上面的自定义视图。 所以我做了这样的事情:

LLViewGroup.addView(mCustomView, 0);

对于我设置的自定义视图:

android:layout_width="wrap_content"
android:layout_height="wrap_content"

现在,只有一个自定义视图添加到上面的线性布局时,它才能正常工作。但是当我添加多个时,onDraw没有添加任何自定义视图被调用,因此没有任何东西是绘制的。

请有人帮我解决问题。 如果我给出以下精确值,它可以正常工作:

android:layout_width="40dip"
android:layout_height="40dip"

但是使用match_parent或wrap_content时,不会绘制任何视图。

谢谢, 晴天

0 个答案:

没有答案