正如标题所说,我需要在拍照时创建一个非常简单的相机覆盖UIImagePickerController.我想.png在相机上添加非常简单的文件(如空盒子),但我无法弄清楚如何做到这一点.
我已经检查过这个网页上的大部分教程,但是大部分都不了解.这对我来说似乎很难,并且将一个简单的.png文件添加到相机覆盖图应该比这更容易.
(IBAction) getPhoto:(id) sender {
UIImagePickerController * picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
if((UIButton *) sender == choosePhotoBtn) {
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
} else {
}
label1.text =@"PHOTO ACTION";
[self presentModalViewController:picker animated:YES];
}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
[picker dismissModalViewControllerAnimated:YES];
imageView.image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
}
Run Code Online (Sandbox Code Playgroud)
我应该在哪里实现我的覆盖代码?我应该使用哪些课程,我该怎么办?
dre*_*zor 15
有一个UIImagePickerController叫做的财产cameraOverlayView.这是一个UIView*,所以你需要创建一个并将你的PNG放到它的背景,然后将它分配给你的这个属性picker.
好的,这是代码(我没有测试过)
(IBAction) getPhoto:(id) sender
{
UIImagePickerController * picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
// creating overlayView
UIView* overlayView = [[UIView alloc] initWithFrame:picker.view.frame];
// letting png transparency be
overlayView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"yourimagename.png"]];
[overlayView.layer setOpaque:NO];
overlayView.opaque = NO;
picker.showsCameraControls = NO;
picker.cameraOverlayView = overlayView;
if((UIButton *) sender == choosePhotoBtn)
{
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
{
[picker setSourceType:UIImagePickerControllerSourceTypeCamera];
} else {
//do something if the device has no camera or if the camera is disabled in settings (it cannot be assumed that the camera is available/not broken)
}
} else {
}
label1.text =@"PHOTO ACTION";
[self presentModalViewController:picker animated:YES];
}
Run Code Online (Sandbox Code Playgroud)
当然,您可以使用一些自定义UIView*子类而不是创建标准UIView* overlayView,但其他所有内容将保持不变.
| 归档时间: |
|
| 查看次数: |
21199 次 |
| 最近记录: |