在水平滚动视图上的android绘图线

时间:2011-09-17 19:47:39

标签: android drawing scrollview lines

你好我已经发布了我的iphone应用程序Micro-Pitch,现在我将它移植到android。我无法弄清楚如何在滚动视图中绘制线条,我想知道我做错了什么。

这是我的滚动视图界面的一部分

<HorizontalScrollView android:id="@+id/scroll_view" android:layout_above="@+id/btn_info" android:layout_alignParentTop="true" android:layout_height="match_parent" android:layout_width="match_parent" android:overScrollMode="always" android:layout_alignParentRight="true" android:layout_alignParentLeft="true">
            <LinearLayout android:layout_height="match_parent" android:id="@+id/scroll_layout" android:layout_width="match_parent">
            </LinearLayout>
        </HorizontalScrollView>

这是我的plot_view类

public class PlotView extends View
{
    Paint paint = new Paint();

    public PlotView(Context context)
    {
        super(context);
        paint.setColor(Color.RED);
    }

    @Override
    public void onDraw(Canvas canvas) {
            canvas.drawLine(0, 0, 200, 200, paint);
            canvas.drawLine(20, 0, 0, 20, paint);
    }
}

这是我的主要活动类

的一部分
HorizontalScrollView scroll_view;
LinearLayout scroll_layout;
PlotView plot_view;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    scroll_view= (HorizontalScrollView)findViewById(R.id.scroll_view);
    scroll_layout= (LinearLayout)findViewById(R.id.scroll_layout);

    plot_view = new PlotView(this);
    plot_view.setBackgroundColor(Color.WHITE);
    scroll_layout.addView(plot_view);
}

情节视图甚至没有显示在滚动视图

如果可能,请免费查看我的iphone版本的应用程序。这样做是为了在滚动视图上绘制声音。通过这种方式,您可以更好地了解我想要做的事情。

1 个答案:

答案 0 :(得分:0)

您的PlotView尺寸为零,您需要实施onMeasure(int, int)以确定绘图所需的尺寸,如here所述。

您可能还需要为其设置一些LinearLayout.LayoutParams,因为您要通过代码将视图添加到LinearLayout