react-native多圖選擇、圖片裁剪(支援ad/ios圖片個數控制)

來源:互聯網
上載者:User

標籤:選擇   grid   href   frame   ges   catch   mes   gif   ios   

扯淡:

  目前關於rn比較知名並且封裝好的圖片選擇控制項很多,不過能同時支援多圖片上傳,個數控制相容iOS/Ad的卻寥寥無幾,而今天介紹的這款架構可以實現:圖片裁剪、最大圖片個數限制、拍照、本地相簿等功能。

效果:

      

使用簡介:

原理:react-native-syan-image-picker多圖片選取器:
  Android 基於 PictureSelector 2.0
  iOS 基於 TZImagePickerController 1.9.0

iOS/android配置:具體步驟參考:https://github.com/syanbo/react-native-syan-image-picker

核心代碼:

import ImagePicker from ‘react-native-syan-image-picker‘  /**   * 預設參數   */  const options = {      imageCount: 6,          // 最大選擇圖片數目,預設6      isCamera: true,         // 是否允許使用者在內部拍照,預設true      isCrop: false,          // 是否允許裁剪,預設false      CropW: ~~(width * 0.6), // 裁剪寬度,預設螢幕寬度60%      CropH: ~~(width * 0.6), // 裁剪高度,預設螢幕寬度60%      isGif: false,           // 是否允許選擇GIF,預設false,暫無回調GIF資料      showCropCircle: false,  // 是否顯示圓形裁剪地區,預設false      showCropFrame: true,    // 是否顯示裁剪地區,預設true      showCropGrid: false     // 是否隱藏裁剪地區網格,預設false  };  /**     * 以Callback形式調用     * 1、相簿參數暫時只支援預設參數中羅列的屬性;     * 2、回調形式:showImagePicker(options, (err, selectedPhotos) => {})     *  1)選擇圖片成功,err為null,selectedPhotos為選中的圖片數組     *  2)取消時,err返回"取消",selectedPhotos將為undefined     *  按需判斷各參數值,確保調用正常,樣本使用方式:     *      showImagePicker(options, (err, selectedPhotos) => {     *          if (err) {     *              // 取消選擇     *              return;     *          }     *          // 選擇成功     *      })     *     * @param {Object} options 相簿參數     * @param {Function} callback 成功,或失敗回調    */     /**      * 以Promise形式調用      * 1、相簿參數暫時只支援預設參數中羅列的屬性;      * 2、使用方式      *  1)async/await      *  handleSelectPhoto = async () => {      *      try {      *          const photos = await SYImagePicker.asyncShowImagePicker(options);      *          // 選擇成功      *      } catch (err) {      *          // 取消選擇,err.message為"取消"      *      }      *  }      *  2)promise.then形式      *  handleSelectPhoto = () => {      *      SYImagePicker.asyncShowImagePicker(options)      *      .then(photos => {      *          // 選擇成功      *      })      *      .catch(err => {      *          // 取消選擇,err.message為"取消"      *      })      *  }      * @param {Object} options 相簿參數      * @return {Promise} 返回一個Promise對象     */

 

到此已經結束了,總體來說使用還是很方便的,如有使用上的問題或者疑問歡迎評論留言~

 

react-native多圖選擇、圖片裁剪(支援ad/ios圖片個數控制)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.