0

Я хочу показать предупреждение, когда пользователь снимает картинку и нажимает кнопку использования. Странно, что в iPhone OS 2.0, когда мы снимаем картинку, оно показывает загрузочное сообщение, но в iphone os 3.0 оно ничего не показывает. Как я могу показать предупреждение, есть ли способ закрепить процесс imagepicking? в моем приложении иногда это медленно, а иногда и быстро, я еще не понял этого. Кто-то знает об этом?Как показать предупреждение, когда пользователь нажимает кнопку использования после съемки изображения с помощью uiimagepicker?

ответ

1

В вашем методе «imagePickerController» вы захотите отобразить UIAlertView. Ниже приведен полный метод создания UIAlertView.

UIAlertView будет отображаться в течение времени, которое требуется, чтобы сохранить изображение в фотоальбоме.

Вам также нужно добавить метод "didFinishSavingWithError"

 
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)selectedImage editingInfo:(NSDictionary *)editingInfo 
{ 
    if(picker.sourceType == UIImagePickerControllerSourceTypeCamera) 
    { 
    saveImage = [[UIAlertView alloc] initWithTitle:@"Saving Image..." message:nil delegate:self cancelButtonTitle:nil otherButtonTitles:nil]; 

    UIActivityIndicatorView *waitView = [[[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge] autorelease]; 
    waitView.frame = CGRectMake(120, 50, 40, 40); 
    [waitView startAnimating]; 

    [saveImage addSubview:waitView]; 
    [saveImage show]; 
    [saveImage release]; 

    UIImageWriteToSavedPhotosAlbum(selectedImage, self, @selector(image:didFinishSavingWithError:contextInfo:), nil); 
    } 

    [self dismissModalViewControllerAnimated:YES]; 
} 

- (void)image:(UIImage *)image didFinishSavingWithError:(NSError *)error contextInfo:(void *)contextInfo 
{ 
    // Was there an error? 
    if (error == NULL) 
    { 
    NSLog(@"Image Saved"); 
    [saveImage dismissWithClickedButtonIndex:0 animated:YES]; 
    } 
    else 
    { 
    // Error occured 
    } 
}