खोज…


परिचय

UIImagePickerController उपयोगकर्ता को अपने डिवाइस से एक छवि का चयन करने या कैमरे के साथ एक तस्वीर लेने और फिर उस छवि को प्रस्तुत करने की अनुमति देने के लिए लगभग एक बॉक्स समाधान प्रदान करता है। UIImagePickerControllerDelegate के अनुरूप, आप अपने ऐप में निर्दिष्ट कर सकते हैं कि छवि कैसे पेश की जाए और इसके साथ क्या किया जाए (didFinishPickingMediaWithInfo का उपयोग करके) और यह भी कि अगर उपयोगकर्ता एक छवि का चयन करने के लिए या एक चित्र लेने के लिए क्या करता है (imagePickerControllerDidCancel) )।

UIImagePickerController का सामान्य उपयोग

चरण 1: नियंत्रक बनाएं, प्रतिनिधि सेट करें, और प्रोटोकॉल के अनुरूप

//Swift
class ImageUploadViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate {
    
    let imagePickerController = UIImagePickerController()
    
    override func viewDidLoad() {
        super.viewDidLoad()
        imagePickerController.delegate = self
    }
}

//Objective-C
@interface ImageUploadViewController : UIViewController <UIImagePickerControllerDelegate,UINavigationControllerDelegate> {

    UIImagePickerController *imagePickerController;

}

@end

@implementation ImageUploadViewController

- (void)viewDidLoad {

    [super viewDidLoad];

    imagePickerController.delegate = self;

}

@end

ध्यान दें: हम वास्तव में के रूप में परिभाषित कुछ भी लागू नहीं होगा UINavigationControllerDelegate , लेकिन UIImagePickerController से विरासत में मिली UINavigationController और के व्यवहार में परिवर्तन UINavigationController । इसलिए, हमें अभी भी कहना होगा कि हमारा व्यू कंट्रोलर UINavigationControllerDelegate अनुरूप है।

चरण 2: जब भी आपको UIImagePickerController दिखाने की आवश्यकता हो:

//Swift
self.imagePickerController.sourceType = .Camera // options: .Camera , .PhotoLibrary , .SavedPhotosAlbum
self.presentViewController(self.imagePickerController, animated: true, completion: nil)

//Objective-C
imagePickerController.sourceType = UIImagePickerControllerSourceTypeCamera; // options: UIImagePickerControllerSourceTypeCamera, UIImagePickerControllerSourceTypePhotoLibrary, UIImagePickerControllerSourceTypeSavedPhotosAlbum
[self presentViewController:imagePickerController animated:YES completion:nil];

चरण 3: प्रतिनिधि विधियों को लागू करें:

//Swift
func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
    if let pickedImage = info[UIImagePickerControllerOriginalImage] as? UIImage {
        // Your have pickedImage now, do your logic here
    }
    self.dismissViewControllerAnimated(true, completion: nil)
}

func imagePickerControllerDidCancel(picker: UIImagePickerController) {
    self.dismissViewControllerAnimated(true, completion: nil)
}

//Objective-C
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {

   UIImage *pickedImage = info[UIImagePickerControllerOriginalImage];

    if (pickedImage) {
    
        //You have pickedImage now, do your logic here
    
    }

    [self dismissViewControllerAnimated:YES completion:nil];

}

- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {

    [self dismissViewControllerAnimated:YES completion:nil];

}


Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow