iOS8:如何从动态框架加载xib
发布时间:2020-12-14 18:57:11 所属栏目:百科 来源:网络整理
导读:我正在使用 Cocoapods预发布0.36来构建私有动态框架并将其部署到应用程序包中.我使用resources属性来复制xibs,它们出现在app bundle中. s.subspec 'Views' do |ss| ... ss.resources = ['All/My/Folders/**/*.{xib,png}'] ... 我试图从xib加载可重用的控件,
我正在使用
Cocoapods预发布0.36来构建私有动态框架并将其部署到应用程序包中.我使用resources属性来复制xibs,它们出现在app bundle中.
s.subspec 'Views' do |ss| ... ss.resources = ['All/My/Folders/**/*.{xib,png}'] ... 我试图从xib加载可重用的控件,如下所示: NSBundle.mainBundle().loadNibNamed(“MyXib”,owner:loader,options:nil) 但这是失败的,因为它无法在我的嵌入式子框架中找到xib.实际的xib(nib)路径遵循以下模式:’ ./Frameworks/MyPrivateFramework.framework/MyXib.nib 我的问题是,是否有一种简单的,代码无关的加载xib的方式,当在iOS 8框架中打包时它将起作用 – 或者我是否必须在上述路径中明确硬编码?上面的加载代码工作,直到我认为动态框架发生了变化. 谢谢 解决方法
从这篇文章:
http://artsy.github.io/blog/2015/01/04/cocoapods-and-frameworks/ 我到达了从一个类中获取框架包的不可知解决方案,即: NSBundle(forClass: ClassInFramework.self) 然后从中加载xib: NSBundle(forClass: ClassInFramework.self) .loadNibNamed("ClassInFramework",owner:loader,options:nil) 那很有效. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |