2

私はそれをズームインおよびズームアウトする uiview を持っています

を使用してpinchRecognizerMeasureに関連付けます

pinchRecognizerMeasure = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(MeasureAndDraw:)];
[pinchRecognizerMeasure setDelegate:self];
[DrawLine addGestureRecognizer:pinchRecognizerMeasure];
[pinchRecognizerMeasure release];

MeasureAndDraw のコード

    // get position of touches, for example:
    NSUInteger num_touches = [pinchRecognizerMeasure numberOfTouches];

    // save locations to some instance variables, like `CGPoint location1, location2;`
    if (num_touches >= 1) {

        DrawLine.startPoint = [pinchRecognizerMeasure locationOfTouch:0 inView:DrawLine];
    }
    if (num_touches >= 2) {

        DrawLine.endPoint = [pinchRecognizerMeasure locationOfTouch:1 inView:DrawLine];
    }

startPoint 、 endPoint は CGPoint です。それに相当するピクセルを取得したい

次のようなことをするのが正しいですか

startPoint.X * DrawLine.contentScaleFactor でピクセル x 座標を取得するか、どうすればよいか

http://developer.apple.com/library/ios/#documentation/2DDrawing/Conceptual/DrawingPrintingiOS/GraphicsDrawingOverview/GraphicsDrawingOverview.htmlを読みましたが、混乱します

なにか提案を

4

1 に答える 1

4

本当に必要な場合は、UIViewcontentScaleFactorのプロパティを見て、デバイス上のポイントとピクセルの間で変換します。

于 2011-06-29T12:35:21.277 に答える