i have app takes photo , puts in image view. simple. code looks this:
- (void)takephoto:(id)sender { // lazily allocate image picker controller if (!imagepickercontroller) { imagepickercontroller = [[uiimagepickercontroller alloc] init]; // if our device has camera, want take picture, otherwise, pick // photo library if ([uiimagepickercontroller issourcetypeavailable:uiimagepickercontrollersourcetypecamera]) { [imagepickercontroller setsourcetype:uiimagepickercontrollersourcetypecamera]; }else { [imagepickercontroller setsourcetype:uiimagepickercontrollersourcetypephotolibrary]; } // image picker needs delegate can respond messages [imagepickercontroller setdelegate:self]; } // place image picker on screen [self presentmodalviewcontroller:imagepickercontroller animated:yes]; } - (void)imagepickercontroller:(uiimagepickercontroller *)picker didfinishpickingmediawithinfo:(nsdictionary *)info { uiimage *image = [info objectforkey:uiimagepickercontrolleroriginalimage]; image = [imagehelpers imagewithimage:image scaledtosize:cgsizemake(480, 640)]; [imageview setimage:image]; [self dismissmodalviewcontrolleranimated:yes]; }
when use camera roll works great, if use actual camera image view black. why that?
do need save camera roll before use in image view?
ok. found solution myself.
i had dismiss modal view first...
- (void)imagepickercontroller:(uiimagepickercontroller *)picker didfinishpickingmediawithinfo:(nsdictionary *)info { [self dismissmodalviewcontrolleranimated:yes]; //do first!! uiimage *image = [info objectforkey:uiimagepickercontrolleroriginalimage]; image = [imagehelpers imagewithimage:image scaledtosize:cgsizemake(480, 640)]; [imageview setimage:image]; }
Comments
Post a Comment