4

カメラの UIImagePickerController に入ると、メモリ警告メッセージが表示されることがありますが、これを修正する方法がわかりません。

これは私のコードです:

    -(IBAction)addImageCamera:(id)sender
    {
        if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
        {
            pickerImgCamera.sourceType = UIImagePickerControllerSourceTypeCamera;
            cameraView.image=[img imageFromMainBundleFile:@"frameCam.png"];
            pickerImgCamera.cameraOverlayView=cameraView;

            [self.navigationController presentModalViewController:pickerImgCamera animated:NO];

        }
        else
        {
            UIAlertView*alert=[[UIAlertView alloc] initWithTitle:@"Oops" message:@"Camera not found" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil];
            [alert show];
            alert=nil;
        }
    }


 - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
    {
        UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];

        if (picker.sourceType == UIImagePickerControllerSourceTypeCamera)
        {
            [self dismissModalViewControllerAnimated:YES];

            dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
                UIImageWriteToSavedPhotosAlbum(image, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);

            });
        }

        [photoImage setImage:image];
    } 

注: メモリ警告は iPhone と iPad に表示されます。

4

2 に答える 2

0

私の経験では、特に古いデバイスでは、iPhone のカメラが頻繁にメモリの警告を発します。デバッグ中に発生する可能性が高くなります。秘訣は、警告を処理し、重要ではないものを取り除くことです。

于 2012-11-28T15:05:34.997 に答える
-2

アプリで画質がそれほど重要でない場合は、uiimagepickercontroller の videoQuality を UIImagePickerControllerQualityTypeLow に設定します。これにより、アプリケーションでのメモリ警告が減少します。

于 2012-11-02T12:45:26.937 に答える