I have Xcode 5 and storyboard editing is very slow. Each time I start Xcode I get the message:
"The document "MainStoryboard.storyboard" had 26 internal inconsistencies that were found and repaired."
and
"Multiple resources have the same name: yellowbutton.png, etc.
The preceding issues may have occurred due to an SCM operation such as merging."
Standard solutions as deleting the workspace file did not help. How can I solve this?
Thanks!
I had a similar result when I added a segmented control inside a uitoolbar. It would crawl but only when Xcode was on my external monitor. What did the trick, oddly enough, is making sure the segment control style is set to Bar.
I had the same issue. Whenever I opened the storyboard after the inconsistencies message was displayed, Xcode would consume 60%+ CPU and essentially make it unusable.
I (very slowly) found which images were being reported as problems, then deleted them through finder and restarted Xcode. You may also need to remove any references to these images in the storyboard.
Xcode now runs fine - hope it helps!
Try removing all the layout constraints on the view. Storyboard was unusable due to performance until I did this. I'm trying to learn constraints and must have totally jacked them up.
Its under Editor - Resolve AutoLayout Issues - Clear All Constraints in View Controller"
The thing that finally fixed it for me was to disable snapshots in each of the projects that was having performance problems.
File > Project Settings > Snapshots
Once I had disabled the snapshots, I also nuked all the snapshots. The total disk usage in my snapshots directory in a fairly short period of time was ~3GB.
The default directory for the snapshots to be stored in is :~/Library/Developer/Xcode/Snapshots.
Keep in mind that the snapshot setting is set for each project, so you will need to do this for each every project that you are having the performance issues.
Related
I've been working on a project the last few weeks in Xcode and everything's been great. Main.Storyboard all of a sudden, will not load or open. Other projects open fine. There hasn't been any significant changes in this project. The last thing I tried doing was adding a navigation bar to one of my view controllers, to add buttons or items. I also tried adding a navigation item. Things started to complicate after trying to do these things. I have the latest version of Xcode, my project settings are linked correctly and tried rebooting my Mac but it doesn't solve anything. Does anybody know what may have caused this error and how to resolve?
The easy way:
Check out the latest working version of the storyboard file and try the changes again. Likely something odd and transient happened that corrupted the existing storyboard file (I've seen it happen with managed object model files before which are also XML underneath).
If there are too many changes to redo them:
Make a copy of the current storyboard file outside the repo and then checkout the latest working version of the file from the repo.
Diff the two files moving over changes that make sense from the troublesome file keeping an eye out for balanced tags (i.e. if a view has an opening tag but no closing tag Xcode will get confused).
Try opening the modified storyboard in Xcode. With luck it will open and be fine. Otherwise you will need to do a bit more digging or go back to option one and redo the changes.
I downloaded your repo and I can open Main.storyboard just fine:
I noticed that Xcode 7.3 always keep building, even in idle time. This loads CPU much, so sometimes it stops responding. Does anyone have an idea how to turn of this "feature"?
This may be related with mutli-target workspace, cause usually it builds different targets, not currently selected.
After some time struggling this, I finally solved this issue.
Xcode started idle build right after I open Interface Builder. Removing #IBDesignable across all project solved this, so I hope this issue can be solved in future Xcode updates to get using #IBDesignable again.
in XCode: Editor > Automatically Refresh Views
Unselect it and re-run project. Thats it!
Going along with #oleg-kohtenko's answer, closing all Interface Builder windows seems to fix the issue without the need to remove #IBDesignable.
And if you aren't really using IBDesignable, you can still use IBInspectable attributes without causing the building problem.
Just my two cents if designables agent gets hang on Xcode 9.
If you were visualizing the problematic storyboard as iPhone X, edit such storyboard file as source code (right click -> open as -> source code).
Near the top, you'll see a xml block stating
<device id=“retina5_9” ...>
<adaptation id="fullscreen"/>
</device>
Change the id to “retina5_5” (iPhone plus, just the option I used, I’m assuming others would work).
Save and open the file as interface builder and you should be fine.
Now take the time and file a bug report :D
Happy coding!
This is a general XCode question but here goes.
When a nib is opened, XCode auto-versions it, causing it to appear as a changed file in Git/SourceTree. This occurs regardless of whether any real changes have occurred in the nib. The behavior occurs in other file types as well, like image asset catalogs.
When working in a large app with many nibs or large asset catalogs, opening/closing without changes can result in a large list of changed files and increase the chances of unintentionally staging and committing, etc.
Does anyone know of a way to prevent XCode from auto-versioning? Thanks!
In the preferences, uncheck "Add and remove files automatically".
I have a similar situation explain on this thread (XCode 5 Storyboard Internal Inconsistencies), but I installed the final version of the Xcode and never installed any beta version. Additionally, I can't add comments in previous thread cause I don't have enough points. So i need to ask my specific case.
In XCode 5, I have a problem with all of my projects "The document 'main.storyboard' has X internal inconsistencies that were found and repaired. Please save this document to fix the inconsistencies."
If you choose to list the inconsistencies, you see that it's saying that some Images in my resources section, that uses this image, and is duplicating in the Storyboard. I try to save the document, but it does nothing, and when I relaunch the project, I get the same error.
I try all this things with NO SUCCESS:
I delete all duplicates in storyboardFile file.
Drop the image file from my project and add again.
Reconnect UIButtons with the problem image.
Change the image name file.
In my research, also I create a new project in XCode 5, add a same image in two objects inside Storyboard and got the same message.
Anyone have the similar problem?, and more important, anyone have a solution?
I have XCode 5 and OSX 10.8.5.
**** UPDATE *****
I found a workaround. The error is generated when one image inside the storyboard is used several times, if you delete the reference of the image and assign the image to the object by code, the error disappears, but I don't like it. I'll research a little more, but apparently is a bug from Xcode (I hope not).
This problem occurred for me Xcode 10.1 but was resolved. The error message provided a "Show Details" button.
Clicking on Show Details showed my problem, a duplicate.
Right-clicked on the identified storyboard (Main.storyboard) to open as source code.
Searched for the duplicate declarations and removed one of the duplicates.
The error message no longer occurs including when the storyboard is reopened.
An easy way to fix this problem is to open up the Storyboard in TextEdit, then go down to the resources section at the end and delete any duplicate entries for images you see. They're sorted alphabetically, so it's fairly simple to do.
Saved the file, loaded up XCode and no more error messages.
I upgraded to Xcode 5 last night and am experiencing multiple issues, including the one you described above. I also seem to have found a workaround, albeit different from the one you found.
To get rid of it I saved the project, closed it, opened a different project and ran it in the simulator, quit Xcode then reloaded the original project.
Error message no longer appeared.
I have no idea why but this seems to have solved it for me.
Now to tackle the other niggles......... :-/
Same error today after upgrading to Xcode 5: internal inconsistencies relating to images that are used more than once in storyboard, but I found a solution that worked for me here: https://devforums.apple.com/message/883402#883402.
I created a new Asset Catalog (New file / choose "Resource" / Asset Catalog).
Once created, I selected the option 'Import from project' and imported all my images. Seems to have done the trick.
After installing Mavericks and Xcode 5.0.1 the problem was fixed.
Try to find under inferredMetricsTieBreakers section at the end of the storyboard unused segue references in the whole document as in the photo
I've searched all over and haven't found any help...
I built a small test app with two UIViewControllers and their corresponding xibs. Things were fine, then I made some changes to both xibs but when I build and run, I get the old views. I've tried deleting the build folders, running in the simulator and device, cleaning all targets and still the same, old, broke-down xibs that I totally changed are still showing up. I've restarted all the Xcode apps and even my computer.
Getting pretty irritated!
EDIT: I never did figure out what the problem was. Basically, once I had built a project, it remembered the first xibs I made and wouldn't recognize changes to them. If I told a view controller to load from a different, valid nib name, it'd complain that the old one wasn't there.
I reinstalled Xcode and now it all works again. Sheesh.
Try deleting the app from the simulator (hold down on the app's icon to get to jiggle mode, then click the X by the app) and from your device. Then let Xcode reinstall it.
just clean the build using
Product -> Clean
menu.
Just modify your XIB files a bit, then save them, xCode will detect a modification (last modified date in the file system) then load the xib from its actual path, and not from a cache-path :P
I just found (and fixed) a related problem — one that demonstrates similar symptoms but whose root cause is slightly different.
In particular, the symptoms I observed were that my iPad app would initially display an old storyboard image for the first page and, after a short delay, would bring up the most recently edited story board contents. I went through most of the above machinations to no avail.
The problem is that the iPad loader first just dumbly loads your app's launch image into the screen. You usually set up this image as part of the early administrative setup of the app in XCode. At launch time, while the end user is considering the content and cogitating about where to touch the screen, the application is in the mean time madly getting itself ready, un-archiving the xib/nib/storyboard, and doing the real work of getting ready.
In the ideal situation the provided launch image is pixel-for-pixel the same as the one generated by the nib-unarchiving-process. However, if you forgot to update your launch image after updating the story board, you'll see an image shift at the completion of the unarchiving.
I wouldn't have suspected this as the problem except that I had read Jef Raskin's description of how he did exactly this on the Canon Cat word processor to provide the illusion of an instantly ready application: it takes advantage of the fact that the typical human response time to an application startup is on the order of seven seconds — plenty of time for even a floppy-based system to load and overwrite the bitmap facade that the loader sets up. Sometimes, it's good to have read a bit of arcane history. Jef would of course later go on to found a project whose name was Macintosh, and the rest is history — and this bug.
Not sure whether this helps, but I just had this.
It took me days to work it out. In my case I enhanced an existing Xib file. The changes I applied in interface builder never appeared in the app.
Eventually I found the cause. I had my FilesOwner view outlet set to a subview below the top view. When I enhanced the view I did this as an extension to th top view. Thus the changes never appeared when running the app.
Changing the view outlet to the correct view ( the top view in my case ) did the trick and it all worked fine ...
I know steve has found a work around but the problem is not in the XIB files at all. Xcode does not update the YouApplication-info.plist file to
If you open it up you will see the line: Main nib file base name. You must change the value to reflect your desired NIB file name
I had this problem, and it was a result of xcode continuing to copy previously compiled xib's - even though the source file was deleted, the build cache wasn't. Product > Clean and then recompiling solved it.
I just had this issue, just delete the app from the simulator.
Then do a clean on your project.
In xCode,
go to the Product menu,
select Clean.
Or just press Shift+Command+K!
I ended up recreating the xibs from scratch and that worked. Very frustrating.
you can try to modify your XIBs a bit, so xCode will detect a modification through the last modified date in file system. then it will load the xib from its actual path, an not from xCode cache.
I had the same problem, but i solved it by changing the datetime of my system to today. And re-saved the xib. I was testing the local notification.
Just an assumption, not sure if that really caused it: I finished a XIB that worked fine in the simulator and on an actual device. I then changed it to be localised in Xcode 4.5.1. The changes I did after that were not synced to the device until I manually deleted the app from the device and reinstalled via Xcode.
Deleted derived data, cleaned project and build. Old xib was magically removed. :D