Xcode 5 compiling against ios6.1 does not preserve layout - ios

Im having layout issues with projects that target iOS6.1 SDK that are built in xCode 5. My view controllers seem to extend under the top nav bar and the top nav bar is transparent. Setting 'extend edges' has no effect since I am compiling against iOS6.1.
Has anyone been able to find a way to use XCode 5 for pre iOS7 apps or do I basically have to use XCode 4?

I was having the same problem with my iOS6.x app when built with Xcode 5. It looks like in Xcode 5, being careless with your UINavigationBar translucency has serious, but easily fixable consequences.
In my case, making the fix in Interface Builder (IB) made sense as the quickest & easiest way to go. Take a look at this screen grab that shows the translucency check boxes that I unchecked to fix the problem in my app with a UITabBarController and four tabs (i.e. five things had to be un-checked in IB):

try to do that
first press on view
then

Related

Xcode Project Settings Preventing TabBar at Bottom of iPhone X Models?

I have an old project that I've been working on and off on for about 4 years now - the project has gone through many upgrades of XCode versions from 6 to 10 (I'm now using XCode 10.2.1 with 12.2 SDK). The main problem I'm having with it is that it utilizes a Tab View Controller to switch tabs, and no matter what I do, I cannot get the tab bar to appear on the bottom of an iPhone X family device correctly: it appears much higher than it should.
To try and finally narrow down the problem, I've essentially temporarily "replaced" all code and storyboard items from the project to see if anything will move the tab bar to where it's supposed to (if I just create a blank new project with a tab bar controller, the tab bar does appear where it should). I created a test storyboard with just a Tab Bar Controller going to one navigation controller (no constraints have been put in). There is no viewController codes attached to them. I've replaced the app delegate with a "blank" app delegate so there are essentially no extraneous code or restraints there at all. And I still get the tab bar moved:
This happens on the simulator and the device, and there is no code or storyboard setting that's doing this (this same setup on a new project puts the tab bar in the right place).
I've looked around in the Build Settings and other properties that I may have missed to see if I constrained something years ago that may affect this, and didn't see anything.
Is there anything I should be looking for in the project settings that would do this?
I don't want to rebuild the project in a new project - there are many linked libraries, certificates, cocoapods, storyboard items, and I know it would be horrible to try and put it all back in one piece.
My Deployment Target is set to iOS 11, Devices: iPhone, Base SDK: iOS
Any help would be greatly appreciated!
This is usually caused by not having a correct launch image for the iPhone X. The easiest way to fix this is to tell the app target not to use launch images (from the app bundle or from the asset catalog) but to use the LaunchScreen.storyboard instead. (If you don't have one, make one; be sure to set it as a launch screen storyboard by clicking Use As Launch Screen and configure your target to point to it. Examine a plain vanilla new project to see what I mean.) You might not want to keep things that way in the long term but at least it will allow your app to launch to the correct size on all devices.

Xcode8 Controllers are Grey which are designed in Xcode 7 with size classes

I am making my iOS Application Compatible with iPad.I have designed the UI of my Application with Xcode 7 with size classes which is more specifically designed for iPhone, Now i have to upgrade it to support iPad also.
Now with Xcode 8 when i select iPad from Storyboard with Device Pan then most of the controller are Greyed i.e. those controllers are not showing on iPad on the device also and on the Storyboard also. Please check the screenshot for that
I know the reason why they greyed out, because they are designed with size classes for a different size.
Now my question is, is it possible somehow to use this controller for iPad without Redesigning the UI and updating the Auto layouts, as of now i am not seeing any way to make this controllers available for iPad.
Also i have tried with a way but i think that will be very long, I have to delete this controllers and then add it back and set the layouts again.
Also another way would be design separate storyboard.
So please suggest me what will be a better solution to overcome from this.
Thanks
Even after compatibility conversion to Xcode 8, if still it doesn't seem to work, then you need to check if there are any leftovers like below:
If you want to make sure it works with any width and height, find the constraint:
and remove it by clicking on the x, leaving only installed checked:
That should solve it for Xcode 8.

Why is my App always shifted to the right in the iOS Simulator?

I am building a simple iOS app using Storyboards. Currently running Xcode 7.2.1. I have previously built one using .XIB files and never had an issue with layouts on devices.
I have a UIViewController that has a UINavigationBar and Bar Button Item. When I run the app in the simulator, everything looks shifted to the right and partly off screen. The title should be shown in the centre. I am simulating using iPhone 6 and everything in Simulated Metrics are set to Inferred. Could someone help me understand, am I missing a step?
The views are shifted because you didn't set the auto layout constraints. To fix this, add missing constraints.

ios 7 support for existing iPad app

I have existing iPad app supporting iOS 5 and 6.
Can anybody help me to list down item that I need to take care while supporting iOS 7?
One thing I noticed that in existing code ((UITableView*)self.superview) in UITableViewCell doesn't work. superview of UITableViewCell is UITableViewWrapperView that need to be fixed in existing code.
The things are:
1. Navigation bar height and view style are different
2. Status bar is transparent in iOS 7 as in iOS 6 it was opaque.
3. Small thing is about the tint color. By default it is light blue in iOS 7.
4. Button borders have been removed.
Issue's i have faced while running the app in IOS 7.
Status bar issue (view controller get overlaps 20 pixel.)
FixForStatusBarIssue
Customize alert view won't work in IOS7. (We can't customize the alert view in IOS 7.)
My Fix -> You need to customize the view exactly like u want because you can't customize alert view in IOS7.
Issues related to threads.
My Fix -> Use dispatch_queue(GCD with delay) in case of UI not responding (Presenting a view controller from background thread.)
Zbar sdk memory leaks while presenting and dismissing the SDK (more than 5 times app getting slow.)
FixForZbarMemoryLeakIssue
this are the issues i have faced. fixes i have suggested working fine for me. You just use it if you need hope it will work.
Apple's iOS 7 UI Transition guide
Read descriptions of every single element you used in your app.
And be aware of the style and position of the bars (navigation bar/tab bar/tool bar...).
iOS 7 has changed a lot in view hierarchies, you can use Reveal to make things easier.

Make the keyboard in my iOS 7 app translucent/transparent

I've seen that iOS 7 brings some cool features in terms of design, and I was wondering whether I can make the keyboard transparent, as I've seen in some apps.
If so, how can I do it?
I've done a bit of research but haven't found much about it.
Assuming you're working with Xcode 5, the keyboard in iOS 7 IS transparent by default. You don't have to do anything. In IB/Storyboard, place a UITextField onto a ViewController, and turn that ViewController's view green (or some other color). When you click in the UITextField and the keyboard comes up, you'll notice that you can see the view's background color through the keyboard.
In order for the keyboard to be translucent by default, you will need to build your app on Xcode 5 with your Base SDK set to iOS 7.
If you are using an IB file originally created in an earlier Xcode, click on the File Inspector and change the View As property to Xcode 5.

Resources