Подтвердить что ты не робот

Живая визуализация настраиваемого компонента с использованием IB_DESIGNABLE из зависимости pod

У меня возникают трудности с использованием IB_DESIGNABLE в контейнере.

Я создал пользовательский вид, который я обозначил как IB_DESIGNABLE, и создал образец проекта, который его использует. На данный момент проблем нет.

Проблема возникает при добавлении этого пользовательского представления в качестве зависимости от pod. Несмотря на то, что проект строится и работает успешно, возникает ошибка, когда открывается раскадровка, использующая пользовательский вид. Процесс Live Rendering запускается и пытается отобразить представление в реальном времени внутри построителя интерфейса, но он не работает со следующей ошибкой:

enter image description here

Это слишком плохо, потому что мы теряем Live Rendering, который, на мой взгляд, является одной из лучших функций Xcode 6.

  • Cocoapods gem version: 0.34.4
  • Версия Xcode: 6.1 (6A1052d)

Я пробовал другие проекты, которые используют IB_DESIGNABLE и имеют podspec:

У кого-то еще была такая же проблема в Estimote - Ошибка локального местоположения, но описанное решение означает потерю возможностей Live Rendering.

Кто-нибудь мог использовать компонент IB_DESIGNABLE через Cocoapods?

Ошибка: "не удалось загрузить конструктивные элементы из пути (null)"

4b9b3361

Ответ 1

Это исправлено в последней версии Cocoapods (0.36.0.b.1).

Чтобы установить эту версию:

[sudo] gem install cocoapods --pre

Дополнительная информация о Cocoapods с фреймами здесь

Чтобы исправить Error: "failed to load designables from path (null)":

platform :ios, '7.0'

use_frameworks!

target 'test' do
pod 'EAColourfulProgressView', '~> 0.1.0'
end

target 'testTests' do

end

Добавьте use_frameworks! к Podfile.

Ответ 2

При указании своего пользовательского класса в Identity Inspector вы указываете, из какого модуля должен загружаться этот класс? Модуль должен быть именем библиотеки, из которой приходит класс.

Ответ 3

Я разрешил свою проблему, используя use_frameworks! в PodFile, в первой строке. (не забывайте !)

Свойства IBInspectable должны быть динамическими, поэтому он запрашивает динамическое связывание библиотеки. Используя вышеприведенную строку, как только вы установите класс элемента управления, он будет строить фреймворк и связывать его, разрешая эти проблемы привязки. Когда я обновился до бета-версии, Parse перестала работать.

Надеюсь, что это поможет кому-то.