1

私はuiviewを持っていて、そのビューを非常にうまく機能している画像に変換したいのですが、iPhoneのホームボタンを押してアプリを再度実行すると、画像がズームインします。ビューを画像に変換するコードは次のとおりです。

アプリの初回実行時

ホームボタンを押した後、アプリを再度実行します。

- (UIImage *)captureView {
        CGRect rect = [myview bounds];
        UIGraphicsBeginImageContext(rect.size);
        CGContextRef context = UIGraphicsGetCurrentContext();
        [myview.layer renderInContext:context];
        UIImage *img = UIGraphicsGetImageFromCurrentImageContext();
        UIGraphicsEndImageContext();
        return img;

 }
 checkImage.image = [self captureView];
4

3 に答える 3

1

ここで、このコードは間違っていませんが、ビュー全体ではなく他のオブジェクトを使用しました。わかりませんが、画像全体が表示されるビューの境界を使用しようとします..この次のリンクからのこの回答と同じように、私の回答を参照してください..

uiviewトップuiviewをキャプチャする方法

コード内のself.view代わりに試してみてください。myView

あなたの行の代わりにこのコードを追加してくださいcheckImage.image = [self captureView];..

 UIImageView *imgTempHeader = [[UIImageView alloc]initWithImage:[self captureView]];
 imgTempHeader.frame = self.view.frame;
 [self.view addSubview:imgTempHeader];
 [self.view bringSubviewToFront:imgTempHeader];
于 2013-08-06T10:25:29.750 に答える
0

私の経験は、IBでimageViewを設定することです。checkImage は UIImageView のインスタンスだと思いますか?

UIImageView で画像を表示していて、インターフェイス ビルダーで表示モードを中央に設定しただけの場合、画像が大きいとズームインされて表示されます。

最初に画像を処理するこの方法を見てください。

UIImage *newImage = [[UIImage alloc] initWithCGImage:myCGImageRef scale:myZoomSCale orientation:UIImageOrientationDown];

もちろん、画像の CGImageRef を与える必要があります。そのためにあなたか他の誰かに。

于 2013-08-06T10:36:41.380 に答える