Core-Plot: Unknown class CPLayerHostingView in Interface Builder file

馋奶兔 提交于 2019-12-19 10:11:30

问题


Using core-plot does not seem to be an easy integration task. Header path are already setup. In Interface-Builder I create an CPLayerHostingView which belongs to a View Controller which is instantiated by Interface Builder.

When the nib file is loaded I get the message:

Unknown class CPLayerHostingView in Interface Builder file

回答1:


I found, that there are two different versions of that object. One for Mac-Only called "CPLayerHostingView", one for iPhone only called "CPGraphHostingView".

If following the poplular example at http://www.switchonthecode.com/tutorials/using-core-plot-in-an-iphone-application you would use the following lines, if building an iPhone-App:

CPGraphHostingView *graphView = (CPGraphHostingView*)self.view;
graphView.hostedGraph = graph;



回答2:


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

Here is the answer ..

U can see mars' answer there

"i got it to work....ok, i added the -all_load -ObjC flag in the Target>Settings....I think this is where everyone gets confused...There are 2 places where to put the other link and header search paths, in Project Settings and in Target Settings.."

So solution is

Add -all_load -ObjC in Project settings and target settings




回答3:


I had to rename CPLayerHostingView to CPGraphHostingView to get this to work after upgrading to the latest version of core plot (along with iOS 4 and the upgrade of XCode).




回答4:


I think you're saying that you get this error when you load the NIB file in your app's code. In that case, the error suggests that you haven't built the Core Plot classes into your application (iPhone) or linked against the CorePlot framework and copied into the app bundle's Frameworks/ directory (OS X).




回答5:


CPGraphHostingView thank u it worked for me aswell; 3 imp things 1>perform settings for both project target aswell as application target.(make sure configuration is all configuration) 2>give correct header search path for framework library 3>learn over it::::::-)




回答6:


For whatever it is worth. Followed tutorial: http://www.switchonthecode.com/tutorials/using-core-plot-in-an-iphone-application and ended up having that same error. I looked into the CorePlot framework folder and did not find that CPLayerHostingView there, but found CPGraphHostingView inside iPhoneOnly folder. Changed CPLayerHostingView to CPGraphHostingView in IB and error disappeared. So, check what is in yours and use it. May work.



来源:https://stackoverflow.com/questions/2431187/core-plot-unknown-class-cplayerhostingview-in-interface-builder-file

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!