我有一个定制的视图(Android),它绘制了一个自定义的进度条。我希望进度条可以填满其父视图(宽度)。问题在于我不知道如何让自定义视图获得其真实的限制。它需要知道宽度限制以便以正确比例显示不同颜色。我已按以下方式实现onMeasure():
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec)
{
setMeasuredDimension(widthMeasureSpec, 15);
}
然后,在我的onDraw()函数中,当我调用getWidth()时,我得到的是:1073742246。我怎样才能知道真正的父边界呢?很明显,我在这里做错了什么...视图布局参数设置为MATCH_PARENT/FILL_PARENT,我可以在整个区域上进行绘制,但我不知道实际宽度以便按正确比例绘制条形图。
谢谢,
Noam