BSPanoramaView 0.1.0

BSPanoramaView 0.1.0

测试已测试
语言语言 Obj-CObjective C
许可协议 自定义
发布最新版本2017年11月

bestswifter维护。



  • bestswifter

BSPanoramaView

中文文档请参阅这里

由于屏幕录制限制,实际设备上的体验会比上面的gif图像更好。

BSPanoramaView是iOS平台上的轻量级全景图片浏览器,它只会使二进制文件大小增加30k。

BSPanoramaView不依赖于任何第三方框架,且其代码量仅约三百行。

BSPanoramaView受到了WushuputiGH/Panorama的启发,复制了OpenGL的一些计算但重新编写了应用程序结构和修复了许多错误。

目前,如果您能够容忍一些微小的缺陷,BSPanoramaView可以应用于生产环境。

用法

BSPanoramaView是GLKView的子类,而GLKView本身是UIView的子类,所以您可以像使用普通视图一样使用BSPanoramaView。

#import "BSPanoramaView.h"

- (void)viewDidLoad {
    [super viewDidLoad];

    BSPanoramaView *panoView = [[BSPanoramaView alloc] initWithFrame:self.view.bounds imageName:@"test"];
    [self.view addSubview:panoView];
}

纹理(test.png)占用大量内存。例如,分辨率为4096 * 20148的图片占用32M内存,这意味着您应该注意内存占用。

BSPanoramaView实例在dealloc方法中会卸载纹理,您无需额外注意这一点。

- (void)dealloc {
    [self unloadImage];
}

然而,如果没有释放,例如向屏幕外滚动,您应该注意在合适的时间手动调用unloadImage方法。这也在PanoTableViewCell类的代码中进行了演示。

安装

您只需将源代码复制到您的项目中即可,因为项目中只有两个文件。

但是,由于这是可能随时进行优化测试的Beta版本代码,我强烈建议您使用Cocoapods

pod 'BSPanoramaView'