1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
|
- (
void
)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
UIImageView *imageView = [[UIImageView alloc] init];
imageView.frame = CGRectMake(0, 0, 80, 120);
imageView.backgroundColor = [UIColor greenColor];
imageView.tag = 101;
[self.view addSubview:imageView];
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
button.frame = CGRectMake(0, 200, 100, 30);
[button setTitle:@
"打开相册"
forState:UIControlStateNormal];
[button addTarget:self action:@selector(openPics) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:button];
UIButton *button2 = [UIButton buttonWithType:UIButtonTypeRoundedRect];
button2.frame = CGRectMake(0, 300, 100, 30);
[button2 setTitle:@
"打开相机"
forState:UIControlStateNormal];
[button2 addTarget:self action:@selector(openCamera) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:button2];
}
// 打开相机
- (
void
)openCamera {
// UIImagePickerControllerCameraDeviceRear 后置摄像头
// UIImagePickerControllerCameraDeviceFront 前置摄像头
BOOL
isCamera = [UIImagePickerController isCameraDeviceAvailable:UIImagePickerControllerCameraDeviceRear];
if
(!isCamera) {
NSLog(@
"没有摄像头"
);
return
;
}
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
imagePicker.delegate = self;
// 编辑模式
imagePicker.allowsEditing = YES;
[self presentViewController:imagePicker animated:YES completion:^{
}];
}
// 打开相册
- (
void
)openPics {
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
imagePicker.delegate = self;
[self presentViewController:imagePicker animated:YES completion:^{
}];
}
// 选中照片
- (
void
)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info{
NSLog(@
"%@"
, info);
UIImageView *imageView = (UIImageView *)[self.view viewWithTag:101];
// UIImagePickerControllerOriginalImage 原始图片
// UIImagePickerControllerEditedImage 编辑后图片
UIImage *image = [info objectForKey:UIImagePickerControllerEditedImage];
imageView.image = image;
[picker dismissViewControllerAnimated:YES completion:NULL];
}
// 取消相册
- (
void
)imagePickerControllerDidCancel:(UIImagePickerController *)picker {
[picker dismissViewControllerAnimated:YES completion:NULL];
}
|
ios调用相册和摄像头
最新推荐文章于 2024-11-03 21:54:35 发布