ZLPhotoBrowser-objc 1.0.4

ZLPhotoBrowser-objc 1.0.4

longitachi 维护。



  • 作者
  • longitachi

image

版本 Carthage 兼容  许可 平台 语言


说明

该框架基于原 ZLPhotoBrowser,4.0.0 版本以后使用 Swift 重新编写,OC 版本不再维护。请使用 Swift 版本,因为它具有更多功能。

运行 Demo

下载完 Demo 后请执行 carthage update --platform iOS,然后运行 Example target。如果 SDWebImage.frameworkSDWebImageMapKit.framework 路径出错,请关闭项目然后重新打开。

框架整体介绍

功能介绍

  • 支持横竖屏
  • 快速预览、可设置预览最大数量(支持拖拽选择)
  • 直接进入相册选择(支持滑动多选)
  • 编辑图片(可自定义裁剪比例)
  • 编辑视频
  • 查看、选择gif、LivePhoto(iOS9.0)、video
  • 3D Touch预览image、gif、LivePhoto、video
  • 混合选择image、gif、livePhoto、video
  • 在线下载iCloud照片
  • 控制选择video最大时长
  • 多语言国际化(中文简/繁、英文、日文,可设置跟随系统和自行切换,可自定义多语言提示)
  • 相册内拍照按钮实时显示镜头捕捉画面
  • 已选择图片遮罩层标记
  • 已选择图片index
  • 预览已选择照片
  • 预览网络及本地图片/视频(图片支持长按保存至相册)
  • 相册内图片自定义圆角弧度
  • 自定义升序降序排列
  • 支持点击拍照及长按录制视频(仿微信)
  • 开发者可自定义资源图片
  • 支持导出视频(可指定导出视频尺寸、添加图片水印、粒子特效 ps:文字水印暂不支持)

Feature

如果您在使用中有好的需求及建议,或者遇到什么bug,欢迎随时issue,我会及时的回复

更新日志

更多更新日志

● 1.0.1: 适配iOS14 limited权限;

框架支持

最低支持:iOS 8.0

IDE:Xcode 9.0 及以上版本(由于适配iPhone X使用iOS11api,所以请使用Xcode 9.0及以上版本)

使用方法

第一步:

  • 手动
    • 1.直接将PhotoBrowser文件夹拖入到您的工程中
    • 2.导入 Photos.framework及PhotosUI.framework
    • 3.项目依赖 SDWebImageGPUImage 所以需要导入这两个框架
    • 4.导入 "ZLPhotoBrowser.h"
  • Cocoapods
    • 1.在Podfile 中添加 pod 'ZLPhotoBrowser-objc'
    • 2.执行 pod setup
    • 3.执行 pod installpod update
    • 4.导入 <ZLPhotoBrowser/ZLPhotoBrowser.h>
  • Carthage
    • 1.在Cartfile 中添加 github "longitachi/ZLPhotoBrowser-objc"
    • 2.执行 carthage update
    • 3.导入 <ZLPhotoBrowser/ZLPhotoBrowser.h>

第二步:

  • 在项目plist配置文件中添加如下键值对
//如果不添加该键值对,则不支持多语言,相册名称默认为英文
Localized resources can be mixed YES
//或者右键plist文件Open As->Source Code 添加
<key>CFBundleAllowMixedLocalizations</key>
<true/>

//相册使用权限描述
Privacy - Photo Library Usage Description
//相机使用权限描述
Privacy - Camera Usage Description
//麦克风使用权限描述
Privacy - Microphone Usage Description

代码中调用

#import <ZLPhotoBrowser/ZLPhotoBrowser.h>
    
ZLPhotoActionSheet *ac = [[ZLPhotoActionSheet alloc] init];

// 相册参数配置,configuration有默认值,可直接使用并对其属性进行修改
ac.configuration.maxSelectCount = 5;
ac.configuration.maxPreviewCount = 10;

//如调用的方法无sender参数,则该参数必传
ac.sender = self;

// 选择回调
[ac setSelectImageBlock:^(NSArray<UIImage *> * _Nonnull images, NSArray<PHAsset *> * _Nonnull assets, BOOL isOriginal) {
    //your codes
}];

// 调用相册
[ac showPreviewAnimated:YES];

// 预览网络图片
[ac previewPhotos:arrNetImages index:0 hideToolBar:YES complete:^(NSArray * _Nonnull photos) {
    // your codes
}];


// 直接调用相机
ZLCustomCamera *camera = [[ZLCustomCamera alloc] init];


camera.doneBlock = ^(UIImage *image, NSURL *videoUrl) {
    // 自己需要在这个地方进行图片或者视频的保存
};

[self showDetailViewController:camera sender:nil];

英文

功能

  • 支持多种方向:纵向,横向
  • 适配iPhone X
  • 支持预览列表快速选择,可设置最大预览数量(支持拖动选择)
  • 直接从相册选择(支持滑动选择多张图片)
  • 编辑图片(图片滤镜,裁剪比例可自定义)
  • 编辑视频
  • 查看并选择Gif,LivePhoto(iOS 9.0+),视频
  • 3D Touch预览图片,Gif,LivePhoto,视频
  • 选择图片,Gif,LivePhoto,视频的组合
  • 从iCloud网上下载照片
  • 控制选择视频最大播放时间
  • 国际化(当前支持:简体中文、英语、日语、繁体中文。可跟随系统或代码中修改。可指定其他语言)
  • 包括相册中的相机单元格,实时渲染捕获图像
  • 可对选定项目添加遮罩
  • 预览选定项目
  • 预览本地或在线保存的图片/视频(长按保存图片到相册支持)
  • 可自定义相册中图片的半径
  • 可排序升序或降序项
  • 点击拍照或长按录制视频支持(与微信类似)
  • 可自定义资源图片
  • 支持导出视频(可指定视频大小或添加图片水印或粒子效果。PS:当前不支持文本水印)

要求

iOS 8.0+ Xcode 9.0+

使用方法

步骤1

  • 手动

    1. 将PhotoBrowser/ 文件夹拖入您的项目
    1. 导入Photos.framework和PhotosUI.framework
    1. 此仓库依赖于SDWebImage和GPUImage,因此您也需要它
    1. 在您要使用的地方导入"ZLPhotoActionSheet.h"
  • Cocoapods

    1. 在Podfile中添加pod 'ZLPhotoBrowser'
    1. pod setup
    1. pod installpod update
    1. 导入<ZLPhotoBrowser/ZLPhotoBrowser.h>
  • Carthage

    • 1. 在Cartfile中添加 github "longitachi/ZLPhotoBrowser"
    • 2. 执行 carthage update --platform ios 命令,并将框架添加到您的项目中。
    • 3. 导入 <ZLPhotoBrowser/ZLPhotoBrowser.h>

步骤2

  • 在info.plist文件中添加描述
Localized resources can be mixed YES
Privacy - Photo Library Usage Description
Privacy - Camera Usage Description
Privacy - Microphone Usage Description

效果图

  • 多语言国际化效果图 image image image image

  • iPhone X

image

image

  • 3DTouch预览效果图

image

  • 导出视频并添加雪花特效

image

  • 编辑视频预览图

image

  • 编辑图片预览图

image

  • 自定义相机和相关介绍

image image

  • 滑动多选预览图

image

  • 拖拽选择预览图

image

  • 混合选择预览图

image

  • 横屏预览图

image

  • 预览网络图片

image

  • 遮罩层

image

  • 预览快速多选效果图

image image

  • 直接进入相册选择相片效果图

image

  • 预览大图及缩放效果图

image image image

  • 拍照

image

  • 相册内混合选择效果图

image

  • 预览已选择照片效果图

image image

  • 原图功能效果图

image