当前位置: 首页 > 软件库 > iOS代码库 > 图像(Image) >

YBImageBrowser

iOS 图片浏览器
授权协议 MIT
开发语言 Objective-C Ruby
所属分类 iOS代码库、 图像(Image)
软件类型 开源软件
地区 国产
投 递 者 闻慎之
操作系统 iOS
开源组织
适用人群 未知
 软件概览

YBImageBrowser 是一个 iOS 图片浏览器(支持视频),功能强大,性能优越,轻松集成,易于拓展。

特性

  • 支持 GIF,APNG,WebP 等本地和网络图像类型(由 YYImage、SDWebImage 提供支持)。

  • 支持本地和网络视频。

  • 支持系统相册图像和视频

  • 支持高清图浏览。

  • 支持屏幕旋转。

  • 支持预加载提高用户体验。

  • 支持数组或协议配置数据源,自由决定内存占用和交互性能的取舍。

  • 支持数据重载。

  • 支持文案更改,默认有英语和简体中文的适配。

  • 支持业界流行的交互动效。

  • 基于面向协议设计模式,轻松自定义 Cell、ToolBar、SheetView。

  • 质量不错的代码细节和架构设计,易于拓展和维护。

用法

YBImageBrowser 是图片浏览器的主体类,有两种方式为其赋值数据源:一种是直接设置 dataSourceArray 数组属性,一种设置 dataSource 代理属性实现协议方法。 数据源个体为 id<YBImageBrowserCellDataProtocol> 类型,框架默认实现了两个类:YBImageBrowseCellData (图片) 和 YBVideoBrowseCellData (视频),你只需要初始化它们并且以数组或者代理的方式赋值给 YBImageBrowser 实例变量。

简易使用

// 图片
YBImageBrowseCellData *data0 = [YBImageBrowseCellData new];
data0.url = ...;
data.sourceObject = ...;    

// 视频
YBVideoBrowseCellData *data1 = [YBVideoBrowseCellData new];
data1.url = ...;
data1.sourceObject = ...;  

// 设置数据源数组并展示
YBImageBrowser *browser = [YBImageBrowser new];
browser.dataSourceArray = @[data0, data1];
browser.currentIndex = ...;
[browser show];

两种数据模型都有一个属性 sourceObject,该属性是该数据模型的对应的视图对象。举个例子,经典的朋友圈九宫格,sourceObject 可以是九宫格里面的九张图片,它的作用主要是做动效。

运行截图

  • 前言 界面展示类型的轮子往往定制性需求比较多,常常让人抓耳挠腮。这种接近业务的轮子如何设计才能兼顾便捷性和拓展性?如何有效的优化性能?如何控制内存不至于 OOM ?本文以 YBImageBrowser 的重构为切入点,尽量抽象提炼,谈谈笔者对以上问题的思考。 YBImageBrowser 是笔者 2018 年 4 月发布的开源项目。时隔一年多,接近 1.3k stars,处理了 100+ issu

  • 今天运营反馈项目中有些用户打开图片黑屏问题全部是14 系统,经过排查是 YBImageBrowser库的问题没有适配 14 系统 出现原因:iOS 14系统调用方法- (void)displayLayer:(CALayer *)layer,YYAnimatedImageView没有正确处理。 解决:重写YYAnimatedImageView.m 的中的displayLayer方法大概在529 行

  • 当前YBImageBrowser的cocoapods版本为3.0.9,但是这个版本没有适配iOS14。 因此在iOS14下点击预览图片,图片内容显示不出来,变成黑屏。 原因:iOS 14系统调用方法- (void)displayLayer:(CALayer *)layer,YYAnimatedImageView没有正确处理。 解决办法: 添加YYAnimatedImageView的category

 相关资料
  • 使用图片浏览器,你需要在 sm.js 和 sm.css 之后额外引入如下两个文件: <link rel="stylesheet" href="//g.alicdn.com/msui/sm/0.6.2/css/sm-extend.min.css"> <script type='text/javascript' src='//g.alicdn.com/msui/sm/0.6.2/js/sm-exte

  • 图片浏览器是一个像iOS图片浏览器一样用来展示图片的组件。图片可以被缩放或者平移 (可选)。 图片浏览器使用 幻灯片组件来展现图片。 创建一个图片浏览器实例 图片浏览器只需通过javaScript就可以被创建和初始化。我们需要使用App封装好的方法: myApp.photoBrowser(parameters) - 带参初始化图片浏览器 parameters - object - 图片浏览器参数对

  • 雪梦图片浏览器是一款界面简单,功能强大的 android 图片浏览器。 特性 双击放大/缩小图片 动态滑屏翻页 分享图片至邮件,蓝牙,环聊,QQ,微信,Google+等 将图片设置为壁纸或者联系人图标 支持动态播放Gif图片 支持显示SVG图片 支持格式:JPEG (.jpg);GIF (.gif);PNG (.png);BMP (.bmp);WebP (.webp) (Android 4.0+);SVG (.svg)

  • 从互联网下载图片,并显示。下载图片过程中显示进度条。支持图片缩放,运用了ASI、SDWebImage。支持图片缓存。 [Code4App.com]

  • 一个比较完整的图片浏览器,高仿了新浪微博的图片浏览效果,功能包括:下载浏览互联网图片,点击缩略图全屏显示图片、当加载较大图片时会出现圆形进度条,滑动浏览所有图片、保存图片到本地相册、GIF图片播放等。而且仅需几行代码就能添加图片浏览器功能。 [Code4App.com]

  • 本文向大家介绍drag-and-drop实现图片浏览器预览,包括了drag-and-drop实现图片浏览器预览的使用技巧和注意事项,需要的朋友参考一下 今天刚试过chrome的drag and drop API,它能非常简单的将本地的图片放到浏览器中进行预览。试想一下当我们把一个文图片拖拽到浏览器里会发生什么事情,你的浏览器试图打开一个新的页面并加载这个图片。现在我不想浏览器这样帮我处理图片,我希

  • 利用UIScrollView实现照片浏览功能。支持缩略图浏览,点击缩略图查看大图。 [Code4App.com]

  • 本文向大家介绍Android实现幻灯片式图片浏览器,包括了Android实现幻灯片式图片浏览器的使用技巧和注意事项,需要的朋友参考一下 我们来实现一个幻灯片式图片浏览器: 最下面一个画廊视图,选中画廊中的图片,会在上面的ImageSwitcher控件中显示大图。 效果图如图 实现方法: 在布局文件中添加图片切换控件ImageSwitcher和画廊视图控件Gallery res/layout/mai