当前位置 : 主页 > 手机开发 > ios >

ios – Pod(PaymentKit)无法使用imageNamed加载图像

来源:互联网 收集:自由互联 发布时间:2021-06-11
我正在将我的项目更新为 Swift 1.2 到目前为止所做的工作(工作项目的变化): 将Xcode更新为6.3 将Alamofire更新至1.2.0 将其添加到Podfile 添加了use_frameworks!到Podfile 将Podfile 7.0中的平台更改为
我正在将我的项目更新为 Swift 1.2

到目前为止所做的工作(工作项目的变化):

>将Xcode更新为6.3
>将Alamofire更新至1.2.0

>将其添加到Podfile
>添加了use_frameworks!到Podfile
>将Podfile 7.0中的平台更改为8.0

>更新了Stripe 3.0.0 – > 3.1.0

我还修复了我的代码中的一些问题(主要是改为!对于铸件).

之后,PaymentKit(它没有更新)停止加载其图像资产(背景,卡片图像等).

我已经检查了派生数据 – PaymentKit.framework包含其中的所有资产.但像[UIImage imageNamed:@“mastercard”]这样的代码返回nil.我花了几个小时试图解决它 – 没有运气……

任何想法可能是什么原因?

UPDATE

我找到了原因 – use_frameworks!旗
但是我不知道如何留下这个标志(Cocoapods要求Alamofire是一个Swift Pod)并且有工作的PaymentKit.
我现在能看到的唯一原因是 – 使用git子模块添加Alamofire或者只是将它的过程合并到我的项目中.

我认为这里的问题是这个pod“尚未准备好”成为一个框架.他们使用imageNamed代替

NSBundle(forClass: self.class()).pathForResource("amex", ofType: "png")

您仍然可以通过这种方式从代码中获取此图像

let image = NSBundle(forClass: PTKView.self).pathForResource("amex", ofType: "png")

现在,“脏”的解决方法只是将此窗格中的所有资源导入到图像资源中,或者只是将其复制到主捆绑中.

网友评论