i want user take photo in app→crop→save. want use allowsediting property of uiimagepickercontrol. don't know how can it. code until camera.
-(ibaction)takephoto { picker = [[uiimagepickercontroller alloc]init]; picker.delegate = self; [picker setsourcetype:uiimagepickercontrollersourcetypecamera]; [self presentviewcontroller:picker animated:yes completion:null]; }
use pick photo camera
- (ibaction)takephoto:(uibutton *)sender { uiimagepickercontroller *picker = [[uiimagepickercontroller alloc] init]; picker.delegate = self; picker.allowsediting = yes; picker.sourcetype = uiimagepickercontrollersourcetypecamera; [self presentviewcontroller:picker animated:yes completion:null]; } use pick photo photo library
- (ibaction)selectphoto:(uibutton *)sender { uiimagepickercontroller *picker = [[uiimagepickercontroller alloc] init]; picker.delegate = self; picker.allowsediting = yes; picker.sourcetype = uiimagepickercontrollersourcetypephotolibrary; [self presentviewcontroller:picker animated:yes completion:null]; }
use following 2 delegate methods
- (void)imagepickercontroller:(uiimagepickercontroller *)picker didfinishpickingmediawithinfo:(nsdictionary *)info { uiimage *chosenimage = info[uiimagepickercontrollereditedimage]; self.imageview.image = chosenimage; [picker dismissviewcontrolleranimated:yes completion:null]; }
- (void)imagepickercontrollerdidcancel:(uiimagepickercontroller *)picker { [picker dismissviewcontrolleranimated:yes completion:null]; }
add in viewdidload method, if device not support camera display alert message.
if (![uiimagepickercontroller issourcetypeavailable:uiimagepickercontrollersourcetypecamera]) { uialertview *myalertview = [[uialertview alloc] initwithtitle:@"error" message:@"device has no camera" delegate:nil cancelbuttontitle:@"ok" otherbuttontitles: nil]; [myalertview show]; } add both protocols appviewcontroller.h file:
@interface appviewcontroller : uiviewcontroller <uiimagepickercontrollerdelegate, uinavigationcontrollerdelegate>
Comments
Post a Comment