Iphone 如何将图像放入iPad上的UIImagePickerController
我的目标是让用户从Iphone 如何将图像放入iPad上的UIImagePickerController,iphone,ios,objective-c,Iphone,Ios,Objective C,我的目标是让用户从UIwebView捕获屏幕快照,然后将图像加载到UIPopoverController中。然后,用户可以从UIPopoverController裁剪并保存图像 到目前为止,我可以将屏幕截图另存为UIImage。然后,我的UIPopoverController弹出,但没有保存的图像。这是因为myimagePicker sourceType=UIImagePickerControllerSourceTypePhotoLibrary我将用什么替换它 -(UIImage*)captur
UIwebView
捕获屏幕快照,然后将图像加载到UIPopoverController
中。然后,用户可以从UIPopoverController
裁剪并保存图像
到目前为止,我可以将屏幕截图另存为UIImage
。然后,我的UIPopoverController
弹出,但没有保存的图像。这是因为myimagePicker sourceType=UIImagePickerControllerSourceTypePhotoLibrary代码>我将用什么替换它
-(UIImage*)captureScreen:(UIView*) viewToCapture
{
UIGraphicsBeginImageContext(viewToCapture.bounds.size);
[viewToCapture.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
imageView.image = viewImage;
[imageView setHidden:NO];
// this removes current view ie photoLibary
[self dismissViewControllerAnimated:YES completion:NULL];
// this checks that a popover is not already in view
if ([popoverController isPopoverVisible])
{
// if yes - remove
[popoverController dismissPopoverAnimated:YES];
}
else
{
// create an imagePicker
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
imagePicker.delegate = self;
imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
imagePicker.allowsEditing = YES;
// create an PopoverController
popoverController = [[UIPopoverController alloc]
initWithContentViewController:imagePicker];
popoverController.delegate = self;
UIView *popView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 500, 500)];
[self.view addSubview:popView];
[popoverController presentPopoverFromRect:CGRectMake(100,200, 565, 545)
inView:self.view
permittedArrowDirections:0
animated:YES];
}
return viewImage;
}
添加此代码
UIImageWriteToSavedPhotosAlbum(图像,无,无,无)
像这样
-(UIImage*)captureScreen:(UIView*) viewToCapture{
UIGraphicsBeginImageContext(viewToCapture.bounds.size);
[viewToCapture.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
imageView.image = viewImage;
UIImageWriteToSavedPhotosAlbum(viewImage, nil, nil, nil);
[self dismissViewControllerAnimated:YES completion:NULL];
[self performSelector:@selector(call) withObject:nil afterDelay:.3];
}
-(void)call
{
if ([popoverController isPopoverVisible]) {
// if yes - remove
[popoverController dismissPopoverAnimated:YES];
} else {
// create an imagePicker
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
imagePicker.delegate = self;
imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
imagePicker.allowsEditing = YES;
// create an PopoverController
popoverController = [[UIPopoverController alloc]
initWithContentViewController:imagePicker];
popoverController.delegate = self;
UIView *popView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 500, 500)];
[self.view addSubview:popView];
[popoverController presentPopoverFromRect:CGRectMake(100,200, 565, 545)
inView:self.view
permittedArrowDirections:0
animated:YES];
}
希望它能帮助您添加此代码
UIImageWriteToSavedPhotosAlbum(图像,无,无,无)
像这样
-(UIImage*)captureScreen:(UIView*) viewToCapture{
UIGraphicsBeginImageContext(viewToCapture.bounds.size);
[viewToCapture.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
imageView.image = viewImage;
UIImageWriteToSavedPhotosAlbum(viewImage, nil, nil, nil);
[self dismissViewControllerAnimated:YES completion:NULL];
[self performSelector:@selector(call) withObject:nil afterDelay:.3];
}
-(void)call
{
if ([popoverController isPopoverVisible]) {
// if yes - remove
[popoverController dismissPopoverAnimated:YES];
} else {
// create an imagePicker
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
imagePicker.delegate = self;
imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
imagePicker.allowsEditing = YES;
// create an PopoverController
popoverController = [[UIPopoverController alloc]
initWithContentViewController:imagePicker];
popoverController.delegate = self;
UIView *popView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 500, 500)];
[self.view addSubview:popView];
[popoverController presentPopoverFromRect:CGRectMake(100,200, 565, 545)
inView:self.view
permittedArrowDirections:0
animated:YES];
}
希望它能帮助您使用以下代码将图像保存到相册中
UIImageWriteToSavedPhotosAlbum(imageToBeSaved, nil, nil, nil);
您可以参考了解有关该功能的更多信息。使用以下代码将图像保存到相册中
UIImageWriteToSavedPhotosAlbum(imageToBeSaved, nil, nil, nil);
您可以参考以了解有关该功能的更多信息。@pete很高兴我能帮助您!:)@皮特很高兴我能帮助你!:)哇!太好了。我无法在保存图像的同时加载PopoverController,但是调用方法和延迟非常有效。非常感谢!!太好了。我无法在保存图像的同时加载PopoverController,但是调用方法和延迟非常有效。非常感谢