1

我创建了一个自定义视图,它创建了一个位图,然后在该onDraw()方法中我显示了一个对象数据。

同样在 XML 文件中,我使视图可以水平滚动。

我的问题是在我从onDraw()方法中绘制了画布上的所有数据之后,如何增加视图的大小以显示所有数据。

即我希望视图滚动到足够多,直到数据完成而不是更多。

我确实有显示的最后一个项目的 y 坐标。

目前我在 XML 文件中将视图的宽度设置为 800dp,但是对于某些对象,它会切断一些数据。

谢谢

4

1 回答 1

3

您可以覆盖该onMeasure()方法来调整您的大小View

protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
    int parentViewWidth = MeasureSpec.getSize(widthMeasureSpec);
    int parentViewHeight = MeasureSpec.getSize(heightMeasureSpec);
    // ... take into account the parent's size as needed ...
    super.onMeasure(
        MeasureSpec.makeMeasureSpec(newWidth, MeasureSpec.EXACTLY), 
        MeasureSpec.makeMeasureSpec(newHeight, MeasureSpec.EXACTLY));
}
于 2012-10-20T14:47:20.600 回答