を使用して画像を参照し、imageview
に表示しようとしています。基本的に私が画像を閲覧するために使用しているビューは、navigationController
に基づいています。ナビゲーションビューコントローラのIOSイメージピッカー
イメージを選択して表示に戻った後、次のコードを使用すると、ビューが左にちらつき、イメージがイメージビューに表示されていないことがわかります。
実際には、ソースコード全体が終了するので、イメージピッカーの部分のみを投稿しています。必要な場合は、より多くのコードを投稿することができます。
RegistrationFormViewController.h
@interface RegistrationFormViewController : ViewController
<UIImagePickerControllerDelegate,UINavigationControllerDelegate,CLLocationManagerDelegate>
{
CLLocationManager *locationManager;
UIImagePickerController *imagePickerController;
}
@property (strong, nonatomic) CLLocationManager *locationManager;
@property (weak, nonatomic) IBOutlet UIImageView *imageUser;
- (IBAction)registerBt:(id)sender;
RegistrationFormViewController.m
- (void)viewDidLoad {
[super viewDidLoad];
_barButtonBack.target = self.revealViewController;
_barButtonBack.action = @selector(revealToggle:);
[self.view addGestureRecognizer:self.revealViewController.panGestureRecognizer];
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapDetected)];
singleTap.numberOfTapsRequired = 1;
[self.imageUser setUserInteractionEnabled:YES];
[self.imageUser addGestureRecognizer:singleTap];
}
-(void)tapDetected{
NSLog(@"single Tap on imageview");
imagePickerController = [[UIImagePickerController alloc]init];
imagePickerController.delegate = self;
imagePickerController.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
[self presentViewController:imagePickerController animated:YES completion:nil];
}
#pragma mark - ImagePickerController Delegate
- (void)imagePickerController:(UIImagePickerController *)picker
didFinishPickingImage:(UIImage *)image
editingInfo:(NSDictionary *)editingInfo
{
// Dismiss the image selection, hide the picker and
//show the image view with the picked image
[picker dismissViewControllerAnimated:YES completion:nil];
[self.imageUser setImage:image];
self.imageUser.contentMode = UIViewContentModeScaleAspectFill;
}
-(void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
{
[picker dismissViewControllerAnimated:YES completion:nil];
}
このデリゲートメソッドを試してみてください – ozgur
実際、私は静かに新しい、私はその問題を引き起こした、私はそのセクションをコメントしましたが、それでも動作は同じです。 – Haris
少なくともコンテンツモードを更新してから、イメージを設定してから最後にピッカーを解除してください。 – ozgur