How to use Safe Area Layout Guide without Autolayout? - ios

I would like to compact my iOS app also in iPhone X. This iOS app developed using autoresizing and deployment target is iOS8.
I had chosen my viewcontroller in storyboard.Then I tried to check Use Safe Area Layout Guide but it automatically appear check mark on Autolayout.Please go through the image.I want to compact iPhone X design of my app without autolayout.How to solve this issue?

You can't use Safe Area Layout without Auto Layout
Look at this Apple Document:
safeAreaLayoutGuide is member/instance of UILayoutGuide class.
And UILayoutGuide: is a rectangular area that can interact with Auto Layout.
So, you must enable auto layout if you want to use Safe Area Insets.
I think, there is no way.
Here is more detail about Safe Area of Xcode 9

Well, I have faced same situation where my old app which was made with Auto Resize thing and need to update with make it compatible for iPhone X, so what I had done so far is to adding splash screen for iPhone X, the following image will give you an idea to how to do this.
After doing that my app now compatible with iPhone X and i have to have add some new condition where design got disrupted. You can try this. hopefully it may help you.
Thanks

Related

Does the app get auto resized?

Does the application get auto resized when uploaded to the AppStore to fit all devices like iPhone 5 and iPhone 7+ ?
I'm asking this because I'm about to release a new app for the Appstore but in the simulator and on a real device the application doesn't gets resized and all the buttons and label etc are not where they should be.
I am also developing an iOS app, so I understand your problem.
The application doesn't get resized.
The buttons/labels won't be put wherever they should be as Xcode doesn't know where to put them. This is because the screen size varies with each device.
You should use constraints (really good tutorial) to put your buttons/labels wherever you want them to be. Another good tutorial
It's not automatic. You need to design your app to handle layouts on different devices. It's a rather complex subject. You'll need to learn about AutoLayout and size classes, among other topics. If your app isn't handling this correctly, it's not ready for the app store.
Firstly check your application is universal application .
Then You need to look at your Auto Layout constraints inside your storyboard.
Understanding Auto Layout

Required to implement Autolayout Constraint and SizeClasses?

I have an iPhone app which should support for iOS 7 to iOS 9(Enhancement) and all the screen sizes as well. Storyboards are enabled Use AutoLayout and Use Size Classes properties. I am not much familiar with using auto layout.
Do I need to add constraints for views to support all the screen sizes? Is there any other ways to achieve that? Launch Images and Icons are enough for all the screen resolutions? will make any problem when iTunes submission?
Yes to it is recommended to run application on all iphone as well as ipad using a single design , use these tutorials it would help
1.) https://developer.apple.com/library/ios/recipes/xcode_help-IB_adaptive_sizes/chapters/EnablingAdaptiveSizeDesign.html
2.) http://code.tutsplus.com/tutorials/an-introduction-to-adaptive-design--cms-22888

Alignment issue when running simulator

I am trying to run a simple sample using a nib file and it looks like this
However when I run it in my simulator it looks like this
My question is why is the alignment of the simulator not correct ?
The elements should be close to the middle and the screen height should be longer. Any suggestions on how I could fix this ? I am using Xcode 6.2
Here are the things I tried so far :
1 ) I made sure that the alignment in my nib file is set to Auto Layout.
These are the details of my project. I am testing on an iphone 6 as my simulator.
Any suggestions on how I can fix this ?
You need to set Constrain in AutoLayout if u don't want to use auto-layout then u can unCheck it .. you can refer this tutorial http://www.raywenderlich.com/50317/beginning-auto-layout-tutorial-in-ios-7-part-1
You probably need to configure size classes for the class device that you use.
If your app is only for iphone, you can also disable size and keep size classes for iphone only.
Hint Use preview from: Assistant editor -> Automatic > Preview, you will be able to see a preview of the view with all device screen sizes

iOS: Portrait & Landsacpe without adjusting programatically

Am creating an screen that supports both landscape & portrait
While am changing the orientation it miss match the design
Is there any way to adjust the screen without adding any code to adjust.
Because am using an dynamic project.
Screenshot: This is the way am set orientation for whole app in plist
Any solution please. Thanks in advance.
You should use Auto Layout feature (from iOS 6.0).
Take a look at:
http://www.raywenderlich.com/20881/beginning-auto-layout-part-1-of-2
You can use Auto Layout if you support iOS 6 and later, or you could simply use the Autoresizing Masks for earlier versions.
Auto Layout allows you to do complex layouts for most scenarios, but in some cases you'll still need to programatically adjust the constraints.
Check this out for more information on how to get started: https://developer.apple.com/library/ios/documentation/userexperience/conceptual/AutolayoutPG/Introduction/Introduction.html

Story Board issue after upgrading to Xcode 5 and ios 7

I could not figure out why this is happening.I searched here but could not find any answer for this.
The problem is I developed some screens using StoryBoard in xcode 4 and ios 6 but now I upgraded to xcode 5 and ios 7.But after upgrading all my labels,text fields have changed dimensions.Their x,y co-ordinates have changed along with width and height.They all have same x,y co-ordinates(0,758) and width,height as 0,0.
I can bring them back manually editing but there are too many fields to do so.
Is there anyway to do it easily?
Recommendation
From your problem description it sounds like you're seeing the effects of the deep system changes in iOS7.
To verify that you are not seeing any bugs please select your storyboard or xib file (this works on both) and open the assistant editor.
Next choose the Preview as the assistant editor. This will show you the storyboard layout as it will look on your device.
Note the menu on the lower right will show three things:
The version of iOS being previewed
A rotation control to show the controls in different orientations
A height control to show how the view will look at 3.5/4.0 heights
iOS7 Preview
iOS6 Preview
Please keep in mind that the iOS7 control sizes are different from all other prior versions of iOS so they will never line up precisely. Use of auto layout will need to be re-examined if your app is highly complex: There are two options: Review the auto layout guide (here) or turn it off (in the file attributes inspector) and use the old springs and struts (autosizing).
I recommend a thorough reading of Apple's transition guide (link) to make sure you understand the impact of the changes to the UI controls.
Techtopia has a good article on iOS7 Auto Layout which can be very useful in managing the sizing and appearance of UI Controls (link).
Apple has a sample app that I think is worth examining called UICatalog (link). I recommend downloading the app and running it on your simulator to see how the new controls will look. Note that the sample does not have auto layout constraints active, if you choose to continue using auto layout you may want to consider defining your layout with the Visual Formatting Language (link).
Other things to consider
There were some bugs with the early build of storyboard in Xcode 5
and auto layout was changed significantly, please make sure you
download the absolute latest version of Xcode.
You could try cut and paste the objects in Xcode.
You should verify that the auto layout setting is consistent between
versions (either on/off in the file inspector).
Check that your auto layout constraints are not generating a warning
or error in Xcode. If they are you will need to Update All
Constraints.
Make sure you have git turned on before starting so you can rollback
your changes to a known state.
Hope some of these suggestions will be helpful.

Resources