亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

UIImagePickerController

2019-11-14 19:28:57
字體:
來源:轉載
供稿:網友

UIImagePickerController

1.+(BOOL)isSourceTypeAvailable:(UIImagePickerControllerSourceType)sourceType;                 檢查指定源是否在設備上可用。

//檢查照片源是否可用

[UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]2.allowsEditing 默認NO

是否允許編輯

允許編輯.

[imagePicker setAllowsEditing:YES]; 

3. videoMaximumDuration


設置UIImagePicker的最大視頻持續時間.默認10分鐘

4. + availableMediaTypesForSourceType: // 指定源可用的媒體種類

 //獲得相機模式下支持的媒體類型

NSArray* availableMediaTypes = [UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera];

5. sourceType

設置UIImagePicker照片源類型,默認有3種。

照片源類型

 

 UIImagePickerControllerSourceTypeCamera            照相機

 UIImagePickerControllerSourceTypePhotoLibrary      照片庫(通過同步存放的,用戶不能刪除)

 UIImagePickerControllerSourceTypeSavedPhotosAlbum  保存的照片(通過拍照或者截屏保存的,用戶可以刪除)

 

6.UIImagePicker使用步驟:


    檢查指定源是否可用. isSourceTypeAvailable:方法.
    檢查可用媒體(視頻還是只能是圖片) availableMediaTypesForSourceType:方法.
    設置界面媒體屬性mediaTypes PRoperty.
    顯示界面使用presentViewController:animated:completion:方法.ipad中是popover形式.需要確保sourceType有效. 
    相關操作,移除視圖. 


如果想創建一個完全自定義界面的image picker來瀏覽圖片,使用 Assets Library Framework Reference中的類. (AV Foundation Programming Guide 中的 “Media Capture and access to Camera” )

 

7.設置源


    + availableMediaTypesForSourceType: // 指定源可用的媒體種類
    + isSourceTypeAvailable: // 指定源是否在設備上可用
      sourceType 

// 運行相關接口前需要指明源類型.必須有效,否則拋出異常. picker已經顯示的時候改變這個值,picker會相應改變來適應.默認 UIImagePickerControllerSourceTypePhotoLibrary.

8.設置picker屬性


      allowsEditing //是否可編輯
      delegate 
      mediaTypes 

// 指示picker中顯示的媒體類型.設置每種類型之前應用availableMediaTypesForSourceType:檢查一下.如果為空或者array中類型都不可用,會發生異常.默認 kUTTypeImage, 只能顯示圖片.

    

9.video選取參數



      videoQuality //視頻拍攝選取時的編碼質量.只有mediaTypes包含kUTTypeMovie時有效.
      videoMaximumDuration //秒,video最大記錄時間,默認10分鐘.只用當mediaTypes包含kUTTypeMovie時有效. 

10.自定義界面



      showsCameraControls 

// 指示 picker 是否顯示默認的camera controls.默認是YES,設置成NO隱藏默認的controls來使用自定義的overlay view.(從而可以實現多選而不是選一張picker就dismiss了).只有 UIImagePickerControllerSourceTypeCamera源有效,否則NSInvalidArgumentException異常.

      cameraOverlayView 

//自定義的用于顯示在picker之上的view.只有當源是UIImagePickerControllerSourceTypeCamera時有效.其他時候使用拋出NSInvalidArgumentException異常.

      cameraViewTransform 

//預先動畫.只影響預先圖像,對自定義的overlay view和默認的picker無效.只用當picker的源是UIImagePickerControllerSourceTypeCamera時有效,否則NSInvalidArgumentException異常.

11.選取媒體



    – takePicture 

//使用攝像頭選取一個圖片。自定義overlay可以多選。已經有圖片正在選取是調用無效,必須要等delegate收到 imagePickerController:didFinishPickingMediaWithInfo:消息后才能再次選取。非UIImagePickerControllerSourceTypeCamera源會導致異常。

    – startVideoCapture 

    – stopVideoCapture 

//結束視頻選取,之后系統調用delegate的 imagePickerController:didFinishPickingMediaWithInfo:方法。

12.設置攝像頭


      cameraDevice //使用的鏡頭(默認后置的)
    + isCameraDeviceAvailable: // 攝像設備是否可用.
    + availableCaptureModesForCameraDevice: // 設備可用的選取模式 
      cameraCaptureMode //相機捕獲模式
      cameraFlashMode //閃光燈模式(默認自動)
    + isFlashAvailableForCameraDevice: // 是否有閃光能力

13.UIImagePickerControllerDelegate 

使用UIImageWriteToSavedPhotosAlbum保存圖像, UISaveVideoAtPathToSavedPhotosAlbum保存視頻. 4.0后使用writeImageToSavedPhotosAlbum:metadata:completionBlock:保存元數據.

    - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info

//包含選擇的圖片或者一個視頻的URL,詳見“Editing Information Keys.”

//如果是設置可編輯屬性,那么picker會預顯示選中的媒體,編輯后的與初始的都會保存在info中.

    – imagePickerControllerDidCancel:
    – imagePickerController:didFinishPickingImage:editingInfo://Deprecated in iOS 3.0

NSString *const UIImagePickerControllerMediaType;// 媒體類型
NSString *const UIImagePickerControllerOriginalImage;// 原始未編輯的圖像
NSString *const UIImagePickerControllerEditedImage;// 編輯后的圖像
NSString *const UIImagePickerControllerCropRect;// 源圖像可編輯(有效?)區域
NSString *const UIImagePickerControllerMediaURL;// 視頻的路徑
NSString *const UIImagePickerControllerReferenceURL;// 原始選擇項的URL
NSString *const UIImagePickerControllerMediaMetadata;// 只有在使用攝像頭并且是圖像類型的時候有效.包含選擇圖像信息的字典類型

14. UIImagePickerController小例子

UIImagePickerController的代理需要遵守這兩個協議.<UIImagePickerControllerDelegate, UINavigationControllerDelegate>

 

#pragma mark 選擇照片

- (void)selectPhoto

{

    // 1. 首先判斷照片源是否可用

    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) {

        

        // 0)實例化控制器

        UIImagePickerController *picker = [[UIImagePickerController alloc]init];

        // 1)設置照片源

        [picker setSourceType:UIImagePickerControllerSourceTypePhotoLibrary];

        

        // 2) 設置允許修改

        [picker setAllowsEditing:YES];

        // 3) 設置代理

        [picker setDelegate:self];

        // 4) 顯示控制器

        [self presentViewController:picker animated:YES completion:nil];

        

    } else {

        NSLog(@"照片源不可用");

    }

    

}

 

#pragma mark - imagePicker代理方法

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info

{

    UIImage *image = info[@"UIImagePickerControllerEditedImage"];

    [_imageButton setImage:image forState:UIControlStateNormal];

    

    // 關閉照片選擇器

    [self dismissViewControllerAnimated:YES completion:nil];

    

    // 需要將照片保存至應用程序沙箱,由于涉及到數據存儲,同時與界面無關

    // 可以使用多線程來保存圖像

    dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{

        

        // 保存圖像

        // 1. 取圖像路徑

        NSArray *docs = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

        NSString *imagePath = [docs[0]stringByAppendingPathComponent:@"abc.png"];

        

        // 2. 轉換成NSData保存

        NSData *imageData = UIImagePNGRepresentation(image);

        [imageData writeToFile:imagePath atomically:YES];

    });

}

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
中文字幕日韩欧美精品在线观看| 亚洲欧洲视频在线| 中文字幕免费精品一区高清| 久久手机精品视频| 中文字幕亚洲无线码在线一区| 成人免费午夜电影| 久久中文字幕一区| 日韩精品在线免费| 91精品综合视频| 精品自在线视频| 亚洲xxx大片| 色综合五月天导航| 中文字幕亚洲在线| 日韩av手机在线观看| 亚洲第一福利在线观看| 国产+人+亚洲| 国产精品免费在线免费| 国产欧美精品一区二区三区介绍| 国产精品久久久久久av福利| 91亚洲国产成人久久精品网站| 久久精品国亚洲| 国产精品一区二区性色av| 国产亚洲人成a一在线v站| 亚洲性生活视频在线观看| 国产精品视频男人的天堂| 国产a级全部精品| 亚洲精品一区二区三区婷婷月| 欧美日韩激情视频8区| 亚洲人成绝费网站色www| 亚洲风情亚aⅴ在线发布| 欧洲一区二区视频| 亚洲另类xxxx| 久久久久久久久久久久久久久久久久av| 一区二区三区视频免费在线观看| 57pao精品| 九九热这里只有精品免费看| 成人a在线视频| 欧美亚洲成人xxx| 久99久在线视频| 亚洲美女免费精品视频在线观看| 亚洲人成电影网| 中文字幕欧美日韩在线| 91老司机精品视频| 国产在线观看精品| 久久中文精品视频| 日韩亚洲第一页| 欧美亚洲在线观看| 久久伊人91精品综合网站| 国产亚洲精品激情久久| 日韩中文字幕免费视频| 国产精品高潮呻吟久久av黑人| 国产免费一区视频观看免费| 欧美性生活大片免费观看网址| 日本不卡视频在线播放| 欧美性极品少妇精品网站| 欧美精品性视频| 欧美成人精品一区二区| 国产精品96久久久久久又黄又硬| 久久在线视频在线| 亚洲第一区中文99精品| 日韩av电影手机在线| 久久夜色撩人精品| 国产亚洲精品美女久久久久| 裸体女人亚洲精品一区| 日韩在线观看网址| 欧美噜噜久久久xxx| 国产精品一区二区三区成人| 国产精品男人爽免费视频1| 日韩欧美在线视频| 国产综合久久久久久| 欧美色图在线视频| 欧美亚洲国产精品| 97视频网站入口| 永久免费精品影视网站| 中文字幕精品久久| 亚洲精品按摩视频| 国产日韩欧美在线播放| 在线电影中文日韩| 国产91热爆ts人妖在线| 69国产精品成人在线播放| 91精品在线播放| 亚洲综合视频1区| 国产精品主播视频| 精品久久久久久| 欧美精品在线看| 性欧美视频videos6一9| 日韩欧美精品中文字幕| 欧美成人精品三级在线观看| 国产精自产拍久久久久久| 日韩中文字幕不卡视频| 欧美孕妇孕交黑巨大网站| 亚洲国产精品热久久| 96pao国产成视频永久免费| 国产在线视频2019最新视频| 久久久久久久久综合| 久久免费视频网站| 国产精品视频久久久久| 亚洲爱爱爱爱爱| 91久久嫩草影院一区二区| 国产精品一区专区欧美日韩| 日韩av中文字幕在线免费观看| 国产精品久久久久久久久借妻| 亚洲国产中文字幕久久网| 久久手机免费视频| 国产精品稀缺呦系列在线| 久久久女女女女999久久| 日韩av在线影视| 中文字幕精品久久| 欧美日韩国产一中文字不卡| 国产玖玖精品视频| 久久香蕉国产线看观看网| 亚洲成人网在线| 久久亚洲成人精品| 欧美在线视频a| 欧美自拍视频在线观看| 一区二区三区四区在线观看视频| 欧美精品www在线观看| 91精品国产自产91精品| 日韩精品免费一线在线观看| 日本久久久a级免费| 久久在线免费视频| 久久久电影免费观看完整版| 91视频8mav| 尤物yw午夜国产精品视频| 日韩电影免费观看中文字幕| 亚洲天堂久久av| 91精品国产91久久久久久最新| 欧美在线xxx| 日韩有码在线播放| 97人人爽人人喊人人模波多| 亚洲2020天天堂在线观看| 国产成人福利网站| 中文字幕亚洲欧美| 91大神在线播放精品| 国产精品专区第二| 美女国内精品自产拍在线播放| 国产午夜精品全部视频播放| 亚洲精选中文字幕| 国产亚洲精品久久久| 激情成人在线视频| 国产精品黄页免费高清在线观看| 国产欧美精品一区二区三区介绍| 欧美激情三级免费| 国产精品老女人精品视频| 在线观看久久av| 91精品在线观| 国产免费一区视频观看免费| 亚洲国产私拍精品国模在线观看| 欧美高清视频在线观看| 亚洲人成毛片在线播放| 亚洲第一网站男人都懂| 国产精品久久久一区| 国产精品白嫩初高中害羞小美女| 欧美裸体xxxxx| 日韩欧美国产免费播放| 欧美在线中文字幕| 国产一区二区av| 久热精品视频在线观看| 欧美一级片在线播放| 亚洲美女在线看| 欧美亚洲成人xxx| 国内精品久久久| 欧美色欧美亚洲高清在线视频| 91黄色8090|