{"repo":"JiongXing/PhotoBrowser","free":true,"listed":false,"github":"https://github.com/JiongXing/PhotoBrowser","clone":"git clone https://github.com/JiongXing/PhotoBrowser.git","description":"Lightweight, highly customizable iOS photo & video browser in Swift. Supports zoom transitions, drag-to-dismiss, pinch-to-zoom, infinite looping, custom cells and overlays. No third-party dependencies. Works with both UIKit and SwiftUI. 图片/视频媒体浏览器。","language":"Swift","stars":1431,"topics":["photo-browser","transition-animation","swift","drag-to-dismiss","image-viewer","ios","swiftui","video-player","zoom-transition"],"license":"MIT","category":"mobile-apps","readme_excerpt":"JXPhotoBrowser English Documentation JXPhotoBrowser 是一个轻量、可定制的 iOS 图片/视频浏览器。核心基于 UIKit 和 UICollectionView ，支持缩放、拖拽关闭、循环滚动、自动轮播、Zoom/Fade 转场与自定义 Cell，不绑定业务数据模型，也不内置图片加载库。 首页列表 图片浏览 下拉关闭 :---: :---: :---: 特性 - UIKit 核心，SwiftUI 可通过桥接层集成 - 水平/垂直整页浏览与无限循环 - 双击、捏合缩放和可配置固定双击倍率 - 下拉关闭、Zoom/Fade/None 转场 - 程序化跳页、自动轮播和页间距 - 自定义 Cell 与 Overlay 扩展机制 - CocoaPods、SwiftPM、Carthage - iOS 12.0+、Swift 5.4+ 安装 CocoaPods Swift Package Manager Carthage 三种集成方式都会携带 PrivacyInfo.xcprivacy 。框架不追踪用户、不收集数据，也不使用 Required Reason API。 快速开始 数据变化后通过框架入口重载，不要直接操作内部 collectionView： 内嵌 Banner 内嵌模式必须使用标准 View Controller containment，并关闭下拉关闭手势： 移除时依次调用 willMove(toParent: nil) 、移除 view、 removeFromParent() 。 文档 - 详细使用指南 - 4.0 → 4.1 迁移指南 - 技术方案 - 更新记录 已知限制 - 浏览器固定竖屏，不支持设备旋转。 - 垂直滚动模式下不启用下拉关闭。 - 每个 Cell 固定为浏览器整页尺寸；4.1 不再支持逐项自定义尺寸。 CocoaPods 故障排查 如果 Xcode 的 User Script Sandboxing 导致 CocoaPods 的资源复制或 framework 嵌入脚本明确报出沙盒访问错误，可在受影响 Target 中评估将 ENABLE USER SCRIPT SANDBOXING 设为 NO 。没有相关错误时无需修改该设置。 License MIT License","default_branch":null,"files":null,"tree":[],"storefront":"/r/JiongXing","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/JiongXing/PhotoBrowser/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}