Project Icon

KNPhotoBrowser

iOS平台下仿微信微博的图片视频浏览器

KNPhotoBrowser是一个仿微信和微博浏览体验的iOS图片和视频浏览器。支持本地和网络图片、GIF及视频,适配各种iPhone和iPad机型。提供预加载、自定义视图、视频播放控制等API,支持屏幕旋转和手势操作。基于UIViewController构建,依赖SDWebImage库。该项目为开发者提供了灵活的定制选项,适用于需要高度自定义的图片视频浏览需求。

图片

CocoaPods CocoaPods 支持 

KNPhotoBrowser

中文 | 英文

最像中国微信(腾讯)和微博(新浪)的照片或视频浏览器

如果您有任何功能需要添加,请通过电子邮件与我联系。欢迎点赞

图片图片图片图片图片

更新内容

描述
基于UIViewController
适配屏幕旋转和iPad分屏
适配iPhone5iPhone14Pro_Max
本地和网络图片及gif图片
本地和网络视频
PageControl可添加目标以改变值 [API]
平移手势关闭或取消(普通图片、长图、视频)[API]
预加载图片,最多8张 [API]
视频播放器自动播放 [API]
视频播放器倍速播放 [API]
视频播放器支持在线播放(无缓存,无下载)[API]
视频播放器支持下载后播放(下次会搜索)[API]
在PhotoBrowser上显示自定义视图 [API]
在PhotoBrowser上显示自定义视图,并设置跟随PhotoBrowser的动画 [API]
PhotoBrowser显示前,所有图像控件可自定义 [API]
所有操作通过代理进行 [代理]
推送ViewController(2022-12)[API]
重新加载集合数据源(2022-12)[API]
使用源路径加载本地图片(2024-03)[API]

待办事项:

  • 点击视频播放器关闭 [演示中已完成]
  • 播放视频并在后台下载视频
  • 视频播放器下次播放时记忆播放位置(当前秒数)
  • 当PhotoBrowser即将显示或关闭时,隐藏或显示源图像视图(通过代理函数通知演示)[演示中已完成]
  • 视频播放器改变比例

1.使用前需要了解

  • 1.依赖 >=SDWebImage(5.0),如需本地gif图片,依赖 >=SDWebImage(5.8.3)
  • 2.图片和视频播放已可直接使用
  • 3.图片或视频下载已可直接使用
  • 4.可根据需要自定义控件
  • 5.自动管理已下载的图片或视频

2.使用方法

(1).初始化基本参数

// 1.将每个控件作为一个对象,放入数组中
KNPhotoItems *items = [[KNPhotoItems alloc] init];
items.url = @"http://xxxxxxxx/xxx.png";
items.sourceView = imageView;
// 如果当前url是视频类型
// items.isVideo = true;
// 如果当前图片是本地gif
// itemM.isLocateGif = true;

// 如果当前图片是带路径url的本地图片
// itemM.url = @"/xx/ssd/xxx/ss.png"
// itemM.

[self.itemsArr addObject:items];

(2).初始化PhotoBrowser

KNPhotoBrowser *photoBrowser = [[KNPhotoBrowser alloc] init];
photoBrowser.itemsArr = [self.itemsArr copy];
photoBrowser.currentIndex = tap.view.tag;

/// PhotoBrowser将显示
[photoBrowser present];

/// PhotoBrowser将关闭
/// [photoBrowser dismiss];

(3).代理函数描述

photoBrowser 将被关闭
/// photoBrowser 将以当前索引关闭
- (void)photoBrowser:(KNPhotoBrowser *)photoBrowser willDismissWithIndex:(NSInteger)index;
photoBrowser 右侧按钮被点击
/// photoBrowser 右上角按钮被点击,带有当前索引(你可以自定义右侧按钮,但如果你自定义了右侧按钮,你需要实现你的目标动作)
- (void)photoBrowser:(KNPhotoBrowser *)photoBrowser rightBtnOperationActionWithIndex:(NSInteger)index;

.....

(4).浏览器的组件:KNPhotoItems

items 的基本参数
/// 如果是网络图片,设置 `url`,不要设置 `sourceImage`
@property (nonatomic,copy  ) NSString *url;

/// 如果是本地图片,设置 `sourceImage`,不要设置 `url`
@property (nonatomic,strong) UIImage *sourceImage;

/// sourceView 是当前用于显示图片或视频的控件。
/// 1. 如果 sourceView 是 `UIImageView` 或 `UIButton` 类型,只需设置 `sourceView`。
/// 2. 如果 sourceView 是自定义视图,设置 `sourceView`,但不要忘记设置 `sourceLinkArr` 和 `sourceLinkProperyName`。
@property (nonatomic,strong) UIView *sourceView;
自定义源视图(这非常好用)
@property (nonatomic,strong) NSArray<NSString *> *sourceLinkArr;

/**
 例如:
    如果最后一个对象是 UIImageView 类型,则 `sourceLinkProperyName` 为 `image`
    如果最后一个对象是 UIButton 类型,则 `sourceLinkProperyName` 为 `currentBackgroundImage` 或 `currentImage`
 */

/// sourceLinkArr 最后一个对象的属性名
@property (nonatomic,copy  ) NSString *sourceLinkProperyName;

3.如何安装

pod 'KNPhotoBrowser'

// 终端:cd ~(当前路径)
pod install 或 pod update

5.顺便说一下

  • 如果你有任何想法,随时联系我!谢谢
项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号