支持多个iOS版本

支持多个iOS版本,ios,iphone,objective-c,cocoa-touch,ecslidingviewcontroller,Ios,Iphone,Objective C,Cocoa Touch,Ecslidingviewcontroller,我在我的应用程序中使用了一个名为ECSlidingViewController的库。然而,这个库有两个不同的版本,一个用于iOS 7,另一个用于旧版本 由于不同版本使用相同的方法签名,但在不同的文件中定义,因此使用UIDevice检查当前版本实际上不是一个选项,因为这不允许我导入正确的版本。据我所知,iOS应用程序不是按版本编译的,而是作为通用二进制文件编译的 那么我该如何解决这个问题呢?以前一定有人遇到过这个问题。我复制了使用ECSlidingViewController的类,并调用了库的正确

我在我的应用程序中使用了一个名为ECSlidingViewController的库。然而,这个库有两个不同的版本,一个用于iOS 7,另一个用于旧版本

由于不同版本使用相同的方法签名,但在不同的文件中定义,因此使用
UIDevice
检查当前版本实际上不是一个选项,因为这不允许我导入正确的版本。据我所知,iOS应用程序不是按版本编译的,而是作为通用二进制文件编译的


那么我该如何解决这个问题呢?以前一定有人遇到过这个问题。

我复制了使用
ECSlidingViewController
的类,并调用了库的正确版本。

在一个版本中重命名该类,并创建一个桥接类,在其中迁移两个选择器。上面的两条注释非常好。我为你准备了另一个,这就是我所做的。写你自己的。问题是不同的版本使用了完全不同的实现。我通过复制访问ECSlidingViewController的类来解决这个问题,因为我只有两个类(大约150 LOC)。这不是最好的解决方案,但似乎有效。