카메라를 사용하여 여러 이미지를 찍을 수 없습니다. 카메라를 여러 번 호출하는 방법을 보여주는 몇 가지 코드로 안내해 주시겠습니까? 미리 감사드립니다. 사용iPhone에서 UIImagePickerController를 사용하여 여러 이미지를 클릭하십시오.
코드 :
-(void) invokeCamera{
//Invoke View for Camera
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
imagePicker = [[UIImagePickerController alloc] init];
imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera; imagePicker.showsCameraControls = YES;
imagePicker.delegate = self;
[self presentModalViewController:imagePicker animated:YES];
[imagePicker release];
imagePicker = nil;
}
else {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Camera Unavailable" message:@"Requires a camera to take pictures" delegate:nil cancelButtonTitle:@"Continue" otherButtonTitles:nil];
[alert show];
[alert release];
}
}
(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
uploadImage = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
[uploadImage retain];
indicatorView = [[UIView alloc] initWithFrame:CGRectMake(75, 155, 170, 170)]; indicatorView.backgroundColor = [UIColor colorWithRed:0 green:0 blue:0 alpha:0.5]; indicatorView.clipsToBounds = YES; //indicatorView.layer.cornerRadius = 10.0;
objIndicatorView = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge]; objIndicatorView.frame = CGRectMake(65, 40, objIndicatorView.bounds.size.width, objIndicatorView.bounds.size.height);
[indicatorView addSubview:objIndicatorView];
indicatorLabel = [[UILabel alloc] initWithFrame:CGRectMake(20, 115, 130, 22)]; indicatorLabel.backgroundColor = [UIColor clearColor];
indicatorLabel.textColor = [UIColor whiteColor];
indicatorLabel.adjustsFontSizeToFitWidth = YES;
indicatorLabel.textAlignment = UITextAlignmentCenter;
indicatorLabel.text = @"Uploading Image...";
[indicatorView addSubview:indicatorLabel];
[picker.view addSubview:indicatorView];
[picker.view bringSubviewToFront:indicatorView];
[objIndicatorView startAnimating];
[self performSelector:@selector(closeImagePicker) withObject:nil afterDelay:0.1];
}
(void)closeImagePicker{
[self formRequest: uploadImage];
if (objIndicatorView != nil)
{
[objIndicatorView stopAnimating];
[objIndicatorView removeFromSuperview];
[objIndicatorView release];
objIndicatorView = nil;
}
indicatorView.hidden = YES;
if ([respPhotoUpload.msg isEqualToString: @"Image Uploaded"])
{
[self invokeCamera];
}
else
{
[self dismissModalViewControllerAnimated:YES];
}
}
다음에 코드 서식을 사용합니다. 그래서 그것의 읽을 수있는 형태로. – visakh7
좋습니다, 고맙습니다. – iPhoneGeek
코드가 제대로 작동하는지 확실하지 않아 메모리가 누출 될지라도 확실합니다. – visakh7