iPhone、拡大鏡効果を再現する 質問する

iPhone、拡大鏡効果を再現する 質問する

ビューの一部を拡大するために、カスタム ビューで移動可能な拡大鏡 (コピー アンド ペーストするときの拡大鏡のようなもの) を作成できるようにしたいと思います。

どのように始めればよいか全く分かりません。何かアイデアはありますか?

ご協力ありがとうございます :)

ベストアンサー1

クロスワードではこれを行います。drawRect メソッドで、円をマスクし (虫眼鏡の「マスク」を含むモノクロ ビットマップを使用)、そこに 2 倍のスケール変換を使用して対象のビューを描画します。次に、その上に虫眼鏡の画像を描画すれば完了です。

- (void) drawRect: (CGRect) rect {
    CGContextRef    context = UIGraphicsGetCurrentContext();
    CGRect          bounds = self.bounds;
    CGImageRef      mask = [UIImage imageNamed: @"loupeMask"].CGImage;
    UIImage         *glass = [UIImage imageNamed: @"loupeImage"];

    CGContextSaveGState(context);
    CGContextClipToMask(context, bounds, mask);
    CGContextFillRect(context, bounds);
    CGContextScaleCTM(context, 2.0, 2.0);

    //draw your subject view here

    CGContextRestoreGState(context);

    [glass drawInRect: bounds];
}

おすすめ記事