官方的图像选择插件是image_picker
,这个插件简单易用,但是单选的,而且没有预览功能,因为想实现像微信多选及缩放预览功能,所以放弃它,试用multi_image_picker,用上去还不错,但刚开始错误认为不支持缩放预览功能,所以又放弃,改用photo
,它能满足我“多选及缩放预览功能”功能,但是它有很多小问题,同时又不怎么维护,思前想后还是换回multi_image_picker,细读文档发现默认不开启缩放预览功能,但实际支持的!
记录下遇到的一点问题(主要是当时偷懒没仔细读文档):
1、中文显示
默认是英文显示的,但是可以设置选项,改用中文显示。
MaterialOptions(
actionBarTitle: "选择图像",
allViewTitle: "所有图像",
// 显示所有照片,值为 false 时显示相册
startInAllView: false,
actionBarColor: '#00b1f5',
textOnNothingSelected: '没有选择图像',
useDetailsView: true,
selectionLimitReachedText: "超过最大选择数目."
)
2、开启图片预览功能
选项中设置 useDetailsView
为true即可。
MaterialOptions(
// 使用详情视图
useDetailsView: true
)
3、IOS上的问题
a) 因为调用到摄像头和相册,plist中要添加描述:
<key>NSPhotoLibraryUsageDescription</key>
<string>Example usage description</string>
<key>NSCameraUsageDescription</key>
<string>Example usage description</string>
b)可能遇到下述报错情况:
CocoaPods could not find compatible versions for pod "multi_image_picker":
In Podfile:
multi_image_picker (from.symlinks/plugins/multi_image_picker/ios
)
Specs satisfying themulti_image_picker (from
.symlinks/plugins/multi_image_picker/ios)
dependency were found, but they required a higher minimum deployment target.
其实官方文档上有特别描述:
The plugin supports Swift Version 5.0. Make sure you have this version set in your Build Settings -> SWIFT_VERSION
Also you need to add platform :ios, '9.0' on top of your ios/Podfile .
翻译起来,具体操作就是:
打开flutter项目中的ios目录,Podfile最上面添加一行:platform :ios, '9.0'
大致就这些内容,遇到其它再补充。