Android自定义视图:带OnDaw的MATCH_PARENT不起作用

时间:2012-07-21 10:41:25

标签: java android layout layoutparams

我是Android新手,但我有一个简单的问题。 我有一个垂直线性布局,如果我在这里放置一个普通按钮,并给它宽度和高度的MATCH_PARENT标志,按钮将填充所有空间。一切都好。

现在我有了一个简单的自定义视图(一个扩展View的类),我重写了OnDraw方法,用于在视图中间绘制一个十字。对于绘制十字架我需要获得控件的宽度和高度,如果在eclipse的UI布局编辑器中我设置了固定的宽度和高度,它可以正常工作(我直接在Eclipse中看到十字架的预览)但是如果我将视图扩展到边框我只有WARP_CONTENT(使用按钮我得到MATCH_PARENT),没问题,我在XML中更改它,但LayoutParams的宽度和高度将返回0 !! (我在eclipse的预览中直接看错了!)为什么?

我尝试在OnWindowFocusChanged方法中设置manualy的宽度和高度等待,但它总是给我0.

问题是视图实际上具有权限维度但是当我调用getLayoutParams()。width时它给我0,所以我看到一个白色矩形在正确的位置(视图的白色背景),但十字架画在左上角!

抱歉我的英语不好。 谢谢。 莫罗。

1 个答案:

答案 0 :(得分:0)

我认为您需要为您的视图设置此参数。

android:layout_alignTop

或与此相关的东西。我猜