带有路径绘制命中测试的Android自定义视图

时间:2014-04-09 00:58:34

标签: android

我正在创建一个允许免费绘图的Android应用程序。

绘图区域由FrameLayout表示,其中包含一组DrawingView(从View派生)。

每个DawingView都有一个透明的背景,其大小与FrameLayout的大小相匹配。

DrawingView绘制路径(通过调用path.moveTo后跟多个path.lineTo构建)

 Path _penPath;
 Paint _paint;

@Override 
protected void onDraw(Canvas canvas) {
     super.onDraw(canvas);
     canvas.drawPath(_penPath, _paint);
}

我需要执行命中测试,只有当触摸指针位于实际路径上时才为真,如果它位于透明背景上则为false。

目前,在Z顺序中为每个DrawingView调用onTouch函数。

我知道我可以计算触摸指针与路径中每个点之间的距离,并将其与阈值进行比较以实现命中测试,但我希望框架中有一些我可以使用的东西。

例如在C#WPF透明区域,如果未明确配置,则不会引发触摸事件。

感谢。

0 个答案:

没有答案