Core-Plot: неизвестный класс CPLayerHostingView в файле Interface Builder - PullRequest
2 голосов
/ 12 марта 2010

Использование core-plot не кажется простой задачей интеграции. Путь к заголовку уже настроен. В Интерфейсном Разработчике я создаю CPLayerHostingView , который принадлежит View Controller, который создается в Интерфейсном Разработчике.

Когда файл пера загружен, я получаю сообщение:

Unknown class CPLayerHostingView in Interface Builder file

Ответы [ 6 ]

11 голосов
/ 16 ноября 2010

Я обнаружил, что есть две разные версии этого объекта. Один для Mac-Only называется CPLayerHostingView, другой для iPhone называется только CPGraphHostingView.

Если следовать популярному примеру на http://www.switchonthecode.com/tutorials/using-core-plot-in-an-iphone-application, вы бы использовали следующие строки при создании iPhone-приложения:

CPGraphHostingView *graphView = (CPGraphHostingView*)self.view;
graphView.hostedGraph = graph;
2 голосов
/ 23 октября 2010

Мне пришлось переименовать CPLayerHostingView в CPGraphHostingView, чтобы заставить его работать после обновления до последней версии основного графика (вместе с iOS 4 и обновлением XCode).

2 голосов
/ 10 июня 2010

http://www.switchonthecode.com/tutorials/using-core-plot-in-an-iphone-application

Вот ответ ..

Вы можете увидеть ответ Марса там

"я заставил его работать .... хорошо, я добавил флаг -all_load -ObjC в Target> Settings .... Я думаю, что это где все запутались ... Есть 2 места, где поставить другие пути поиска ссылок и заголовков, в настройках проекта и в настройках цели .. "

Итак, решение

Добавить -all_load -ObjC в настройках проекта и целевых настройках

1 голос
/ 25 октября 2010

CPGraphHostingView спасибо, это сработало и для меня; 3 вещи 1> выполнить настройки как для цели проекта, так и для цели приложения (убедитесь, что конфигурация является всей конфигурацией) 2> дать правильный путь поиска заголовка для библиотеки фреймворка 3> учиться над этим :::::: -)

1 голос
/ 12 марта 2010

Я думаю, вы говорите, что получаете эту ошибку, когда загружаете файл NIB в код вашего приложения. В этом случае ошибка говорит о том, что вы не встроили классы Core Plot в свое приложение (iPhone) или не привязали его к платформе CorePlot и не скопировали в каталог Frameworks / пакета приложения (OS X) пакета приложения.

0 голосов
/ 02 ноября 2011

Для чего бы это ни стоило. Последовал учебник: http://www.switchonthecode.com/tutorials/using-core-plot-in-an-iphone-application и в конечном итоге с той же ошибкой. Я заглянул в папку инфраструктуры CorePlot и не нашел там CPLayerHostingView, но нашел CPGraphHostingView внутри папки iPhoneOnly. Изменил CPLayerHostingView на CPGraphHostingView в IB, и ошибка исчезла. Итак, проверьте, что у вас есть, и используйте его. Может работать.

...