当前位置: 首页 > 工具软件 > photolibrary > 使用案例 >

Interaction with the camera or the photo library

萧元徽
2023-12-01

As we said before, we need a delegate to deal with the user interaction with the camera or the photo library. In order to do that we have to conform to the UIImagePickerControllerDelegate protocol. Also, since we are going to present the camera (or the photo library) modally, we have to implement the UINavigationControllerDelegate protocol as well. Add both protocols to the AppViewController.h file:

1
@interface  APPViewController   :  UIViewController <UIImagePickerControllerDelegate, UINavigationControllerDelegate>

When the user clicks (touch up inside) the “Take Photo” button, we have to create an UIImagePickerController and set its delegate to our AppViewController class. Also, we have to specify which kind of image picker we want to show, the camera with UIImagePickerControllerSourceTypeCamera, or a photo library with UIImagePickerControllerSourceTypePhotoLibrary; in this case we select the Camera. Once the picker has been crated, we have to present it modally with the method presentViewController.

Write the following takePhoto acton method:

1
2
3
4
5
6
7
8
9
10
-   (IBAction )takePhoto : (UIButton   * )sender   {
     
    UIImagePickerController   *picker   =   [ [UIImagePickerController alloc ]  init ];
    picker.delegate   =  self;
    picker.allowsEditing   =   YES;
    picker.sourceType   =  UIImagePickerControllerSourceTypeCamera;
     
      [self presentViewController :picker animated : YES  completion : NULL ];
     
}

Finally, we do the same for the selectPhoto action method, but changing the sourceType to UIImagePickerControllerSourceTypePhotoLibrary.

1
2
3
4
5
6
7
8
9
10
11
-   (IBAction )selectPhoto : (UIButton   * )sender   {
     
    UIImagePickerController   *picker   =   [ [UIImagePickerController alloc ]  init ];
    picker.delegate   =  self;
    picker.allowsEditing   =   YES;
    picker.sourceType   =  UIImagePickerControllerSourceTypePhotoLibrary;
     
      [self presentViewController :picker animated : YES  completion : NULL ];

     
}

转载于:https://www.cnblogs.com/vonk/p/4296472.html

 类似资料:

相关阅读

相关文章

相关问答