Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Failed to render instance of IB Designables

I have an Objective-C and Swift mixed dynamic framework. And the mixed framework was linked with two pure Objective-C dynamic frameworks.

When I tried to mark any class in the mixed framework with IB Designable and using that class in either storyboard or nib, the Xcode always says the instance of it was failed to render.

And there was the error message:

IB Designables: Failed to render instance of WZUITokenField: dlopen(WZUIKit.framework, 1): Library not loaded: /Library/Frameworks/WZFoundation.framework/WZFoundation Referenced from: WZUIKit.framework Reason: image not found

IB Designables: Failed to update auto layout status: dlopen(WZUIKit.framework, 1): Library not loaded: @rpath/WZFoundation.framework/WZFoundation Referenced from: WZUIKit.framework Reason: image not found

The framework WZUIKit is an Objective-C and Swift mixed framework and the WZFoundation is pure Objective-C.

Plus, all these sutff work on either device or the simulator.

like image 324
WeZZard Avatar asked Nov 07 '14 10:11

WeZZard


3 Answers

Finally, I solved this issue by adding $(CONFIGURATION_BUILD_DIR) in the target's build settings' Runpath Search Paths field.

Plus, there are some additional steps you might need to do with your Xcode.

  1. Clear Xcode derived data for the project. They are in ~/Library/Developer/Xcode/DerivedData
  2. Clean your current build by pressing K
  3. Build your project
  4. In storyboard go to Editor menu and do Refresh All Views; wait for build to be completed and errors should be gone

Credit to @Mojtaba

like image 96
WeZZard Avatar answered Nov 20 '22 19:11

WeZZard


If you have the same issue building a Mac App, adding @loader_path/../Frameworks to Runpath Search Paths solved this for me.

like image 20
Alex Avatar answered Nov 20 '22 17:11

Alex


for me it works to close xcode and reopen it again. No errors after. Thanks.

like image 13
Gabriel Avatar answered Nov 20 '22 19:11

Gabriel