Warning: 如果您的App在中国地区上架,请更新至最新版本(>=4.1.9)。issue
English | 简体中文
ZLPhotoBrowser是一款微信样式的图片选择器,支持预览/相册内拍照及录视频、拖拽/滑动选择,编辑图片/视频,支持多语言国际化等功能。
- 框架自
4.0.0
版本起,升级为纯Swift
编写框架,支持最低版本由iOS8
升级到了iOS10
- 添加并增强了一些实用功能(例如图片编辑、预览界面下方小视图显示及拖拽排序等等) 具体使用请下载demo查看
Swift
版本兼容oc
app调用; 如需使用之前的oc
版本(oc
版本不再维护),请点这里
Swift
及OC
详细使用方法请查看Wiki
如果你仅想使用图片编辑功能,请移步ZLImageEditor
你想要的应有尽有,部分功能如下,更多功能请查看 ZLPhotoConfiguration
中的参数定义(没有的话欢迎提 issue ,功能建议好的话会采纳并着手开发)
- 适配 iOS14
- 支持横竖屏
- 自选框架样式
- 预览快速选择(支持拖拽选择,效果参照QQ)
- 相册内部选择(支持滑动选择)
- 图片/Gif/LivePhoto/Video 混合选择
- 自定义最大预览数/选择数/视频最大最小可选时长,控制可否选择原图
- 自定义每行显示列数
- 图片编辑(涂鸦/裁剪/图片贴纸/文字贴纸/马赛克/滤镜)(图片编辑可编辑多张;涂鸦/文字颜色可自定义;裁剪比例可自定义;滤镜效果可自定义;编辑工具可根据需要自行选择)
- 视频编辑(自定义最大裁剪时长)(效果参照微信视频编辑;支持编辑本地视频)
- 自定义相机(效果参照微信拍照,点击拍照、长按拍摄;上滑调整焦距;可设置最大/最小录制时间及视频分辨率;可设置闪光灯模式及视频导出格式;可根据自己需要控制是否使用自定义相机)
- 多语言国际化支持(中文简/繁,英文,日文,开发者可选根据系统或自己指定,多语言文案可自定义)
- 已选择照片index
- 已选/不可选 状态下mask阴影遮罩
- 大图界面下方显示已选择照片,可拖拽排序(可根据自己需要控制是否显示)
- 大图界面下拉返回
- 相机内部拍照cell实时显示相机俘获画面
- 可自定义框架字体
- 框架各个部位颜色均可自定义(传入dynamic color即可支持 light/dark mode)
- 框架内图片资源可自定义
如果你在使用中有好的需求及建议,或者遇到什么bug,欢迎随时issue,我会及时的回复
- iOS 10.0
- Swift 5.x
- Xcode 12.x
- 快速选择
let ps = ZLPhotoPreviewSheet()
ps.selectImageBlock = { [weak self] (images, assets, isOriginal) in
// your code
}
ps.showPreview(animate: true, sender: self)
- 直接进入相册选择
let ps = ZLPhotoPreviewSheet()
ps.selectImageBlock = { [weak self] (images, assets, isOriginal) in
// your code
}
ps.showPhotoLibrary(sender: self)
- 需要注意的地方,你需要在你app的
Info.plist
中添加如下键值对
// 如果不添加该键值对,则不支持多语言,相册名称默认为英文
Localized resources can be mixed YES
//或者右键plist文件Open As->Source Code 添加
CFBundleAllowMixedLocalizations
// 相册使用权限描述
Privacy - Photo Library Usage Description
// 相机使用权限描述
Privacy - Camera Usage Description
// 麦克风使用权限描述
Privacy - Microphone Usage Description
● 4.2.0
新增:
支持链式调用;
优化自定义相机代码;
小图界面取消按钮添加图片类型;
Fix:
编辑视频未操作进度条的情况下也会重建一个新视频.[#655]
某些条件下,无法取消选择已选的照片.[#659]
● 4.1.9
Fix:
移除CallKit
● 4.1.8
新增:
图片支持圆形裁剪;
自定义相机没有麦克风权限时弹框提示;
文本过长时换行显示;
预览网络视频时,可自定义http header;
完善Live Photo判断逻辑;
拍照完成后直接进入编辑界面;
Fix:
解决通话中无法启动自定义相机的问题;
...
🇨🇳 中文简/繁, 🇺🇸 英语, 🇯🇵 日语, 🇫🇷 法语, 🇩🇪 德语, 🇷🇺 俄语, 🇻🇳 越南语, 🇰🇷 韩语, 🇲🇾 马来语, 🇮🇹 意大利语, 🇮🇩印度尼西亚语.
-
Manually
- 1.直接把
Sources
文件夹拖入到你的工程中
- 1.直接把
-
Cocoapods
- 1.在Podfile 中添加
pod 'ZLPhotoBrowser'
- 2.执行
pod install
如找不到最新版本,可首先执行
pod repo update
- 1.在Podfile 中添加
-
Carthage
- 1.在Cartfile 中添加
github "longitachi/ZLPhotoBrowser" ~> 4.0.0
- 2.执行
carthage update ZLPhotoBrowser --platform iOS
如果执行时遇到
Building universal frameworks with common architectures is not possible. The device and simulator slices for "ZLPhotoBrowser" both build for: arm64 Rebuild with --use-xcframeworks to create an xcframework bundle instead.
这个错误,点击这里 - 1.在Cartfile 中添加
-
Swift Package Manager (该方式集成暂时有问题,图片及多语言资源无法读取,请暂时先用其他方式)
-
- 选择 File > Swift Packages > Add Package Dependency,输入
https://github.com/longitachi/ZLPhotoBrowser.git
- 选择 File > Swift Packages > Add Package Dependency,输入
-
- 输入对应版本号(SPM 最低版本为
4.0.9
)
- 输入对应版本号(SPM 最低版本为
-
- 等Xcode下载完成后确定即可
-
- 给个★ Star
- 请喝☕️ or or
- 编辑视频
- 多语言
- 自定义相机介绍