麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

UIImagePickerController

2019-11-14 19:28:57
字體:
供稿:網(wǎng)友

UIImagePickerController

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

//檢查照片源是否可用

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

是否允許編輯

允許編輯.

[imagePicker setAllowsEditing:YES]; 

3. videoMaximumDuration


設(shè)置UIImagePicker的最大視頻持續(xù)時間.默認10分鐘

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

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

NSArray* availableMediaTypes = [UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera];

5. sourceType

設(shè)置UIImagePicker照片源類型,默認有3種。

照片源類型

 

 UIImagePickerControllerSourceTypeCamera            照相機

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

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

 

6.UIImagePicker使用步驟:


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


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

 

7.設(shè)置源


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

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

8.設(shè)置picker屬性


      allowsEditing //是否可編輯
      delegate 
      mediaTypes 

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

    

9.video選取參數(shù)



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

10.自定義界面



      showsCameraControls 

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

      cameraOverlayView 

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

      cameraViewTransform 

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

11.選取媒體



    – takePicture 

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

    – startVideoCapture 

    – stopVideoCapture 

//結(jié)束視頻選取,之后系統(tǒng)調(diào)用delegate的 imagePickerController:didFinishPickingMediaWithInfo:方法。

12.設(shè)置攝像頭


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

13.UIImagePickerControllerDelegate 

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

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

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

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

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

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

14. UIImagePickerController小例子

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

 

#pragma mark 選擇照片

- (void)selectPhoto

{

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

    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) {

        

        // 0)實例化控制器

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

        // 1)設(shè)置照片源

        [picker setSourceType:UIImagePickerControllerSourceTypePhotoLibrary];

        

        // 2) 設(shè)置允許修改

        [picker setAllowsEditing:YES];

        // 3) 設(shè)置代理

        [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];

    

    // 關(guān)閉照片選擇器

    [self dismissViewControllerAnimated:YES completion:nil];

    

    // 需要將照片保存至應(yīng)用程序沙箱,由于涉及到數(shù)據(jù)存儲,同時與界面無關(guān)

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

    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. 轉(zhuǎn)換成NSData保存

        NSData *imageData = UIImagePNGRepresentation(image);

        [imageData writeToFile:imagePath atomically:YES];

    });

}

 


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 黄色毛片视频在线观看 | 天天天干夜夜夜操 | 亚洲午夜精品视频 | 泰剧19禁啪啪无遮挡大尺度 | 亚洲精品午夜国产va久久成人 | av在线在线 | 欧美一级高清免费 | 久草成人在线观看 | 91av在线免费播放 | 爱操成人网| 日本高清无遮挡 | 91av大片| 久久久久国产精品久久久久 | 国产精品久久久久久久亚洲按摩 | 成年免费视频黄网站在线观看 | 色交视频 | 亚洲精华液久久含羞草 | 国产精品久久久久久久久久10秀 | 欧美性生活区 | 亚洲欧美国产高清va在线播放 | 免费永久在线观看黄网 | 欧美日韩免费一区 | 国产成人精品一区二区视频免费 | 日韩午夜片 | 在线成人亚洲 | 97久久日一线二线三线 | 高清国产福利 | 欧美不卡三区 | 91美女福利视频 | 久久99精品久久久久久国产越南 | 国产精品久久久免费看 | www亚洲成人 | 精品国产1区2区3区 免费国产 | 久久精品一区二区三区国产主播 | 在线成人精品视频 | 中国成人在线视频 | 免费一及片 | 日韩专区在线 | 久久国产精品影视 | 日韩精品中文字幕一区 | 黄色片快播 |