2015-01-07 2 views
4

Я использую предварительный выпуск Cocoapods 0.36 для создания и развертывания динамической структуры в комплекте приложений. Я использую атрибут ресурсов для копирования xibs, и они отображаются в комплекте приложений.iOS8: Как загрузить xib из Dynamic Framework

s.subspec 'Views' do |ss| 
    ... 
    ss.resources = ['All/My/Folders/**/*.{xib,png}'] 
    ... 

Я пытаюсь загрузить многоразовые элементы управления из xibs, как это:

NSBundle.mainBundle().loadNibNamed("MyXib", owner:loader, options:nil)

, но это не удается, поскольку он не может найти XIB в моей вложенном юге рамке. Фактическая XIB (NIB) пути следовать схеме:»

./Frameworks/MyPrivateFramework.framework/MyXib.nib

Мой вопрос, есть простой, код агностик способ загрузки XIB, который будет работать, когда упаковывают в рамках IOS 8 - или сделать Я должен явно жестко кодировать по указанному выше пути? Вышеупомянутый код загрузки работал до тех пор, пока я не подумал, что динамическая каркас меняется.

Благодаря

ответ

16

С этого поста здесь:

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) 

и что сработало.

Смежные вопросы