ios - UIImagePicker reappears after being image is selected -
i have uiimagepicker
keeps reappearing after have selected image. code checking camera , displaying uiimagepicker
based on fact there no camera in simulator.
- (void)viewwillappear:(bool)animated { [super viewwillappear:animated]; self.imagepicker = [[uiimagepickercontroller alloc] init]; self.imagepicker.delegate = self; self.imagepicker.allowsediting = yes; if ([uiimagepickercontroller issourcetypeavailable:uiimagepickercontrollersourcetypecamera]) { self.imagepicker.sourcetype = uiimagepickercontrollersourcetypecamera; } else { self.imagepicker.sourcetype = uiimagepickercontrollersourcetypephotolibrary; } self.imagepicker.mediatypes = [nsarray arraywithobjects:(nsstring *)kuttypeimage, nil]; [self presentviewcontroller:self.imagepicker animated:no completion:nil]; } - (void)viewwilldisappear:(bool)animated { [super viewwilldisappear:animated]; [self clear]; } - (void)imagepickercontroller:(uiimagepickercontroller *)picker didfinishpickingmediawithinfo:(nsdictionary *)info { uiimage *chosenimage = info[uiimagepickercontrollereditedimage]; self.imageview.image = chosenimage; [self dismissviewcontrolleranimated:yes completion:nil]; }
do need force reload initial view? there smarter way this?
edit
i added bar button navigation bar , im firing code on action. fixed issue , seems better way this.
probably viewwillappear
being called everytime uiimagepickercontroller
disappears - because view controller put code becoming visible again.
you can try creating uiimagepickercontroller
in viewdidload
instead, or use boolean property check if calling first time.
Comments
Post a Comment