ユーザーがカメラロールから写真を選択し、UIImageView に表示できるようにするアプリケーションがあります。ただし、表示したい画像をタップしても、カメラ ロールのビューは消えません。そのため、単純に を呼び出す必要があると考えました[sender resignFirstResponder];
。しかし、これはうまくいきませんでした。いろいろ試したり、いろいろ調べたりしましたが、だめでした。私はObjective-Cを初めて使用するので、どんな助けでも大歓迎です。ここに私が取り組んでいるコードがあります: (imgPicker は UIImagePickerController です。)
- (IBAction)grabImage(id)sender {
self.imgPicker = [[UIImagePickerController alloc] init];
self.imgPicker.delegate = self;
self.imgPicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) {
_popover = [[UIPopoverController alloc] initWithContentViewController:imgPicker];
[_popover presentPopoverFromRect:self.imageView.bounds inView:self.imageView permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
}
else {
[self presentModalViewController:imgPicker animated:YES];
}
[self.imgPicker resignFirstResponder];
}
そして、これは問題に関連する場合と関連しない場合があります。
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)img editingInfo:(NSDictionary *)editInfo {
if (imageView.image == nil) {
imageView.image = img;
[[picker parentViewController] dismissModalViewControllerAnimated:YES];
return;
}
if (imageView2.image == nil) {
imageView2.image = img;
[[picker parentViewController] dismissModalViewControllerAnimated:YES];
return;
}
}