以下の手順を試してください。
UIView のサブクラスを 1 つ作成します。その上に UIButtons を追加します。
touchesBegan、moved、end などの Touches デリゲートを実装します。
Inside touchesBegan は touch isinsideview:myButton1 かどうかをチェックし、フラグを true にします。
編集:
UITouch *touch = [[UITouch alloc] init];
touch = [touches anyObject];
CGPoint point = [touch locationInView:self];
if(CGRectContainsPoint(myButton1.frame, point))
NSLog(@"Inside myButton1");
サブビューがタッチでヒットしたかどうかをテストする別の方法は、
CGPoint pt = [[touches anyObject] locationInView:self.view];
UIView *touchedView = [self.view hitTest:pt withEvent:event];
内部タッチが移動した場合、フラグが true かどうかを確認してから drawline()... タッチが insideview:myButton2 にあるかどうかを確認し続けます。setNeedsDisplay を呼び出します。
これで、UIView で線を描画するためのいくつかの方法とサンプル コードが得られます。上記のロジックを適用するだけです。