I have old application in iOS and I haven't been involved in development since 1 year.I have built it in iOS 7. Now I open it in XCode 7.1 and its screen size is small and static, like:
This is UITableview and it has to adjust view to screen accordingly. What can I do to solve this problem?
Just add the various launch screens as mentioned in Image.xcassets
Right Click to add a new iOS launch image set
And then add the respective launch images
you need to only drag and drop one image default-568h#2x.png
Steps:
after download this image please rename as:"Default-568h#2x.png"
Download image > Drag and drop in Your Project > project Clean and Build > Run
If your table view is Visible but not fully, then You have set constarint for your tableView.
Thanks...
You need to add a splash screen with the right size, that is a splash screen with these dimensions:
Width: 640px
Height: 1136px.
This will automatically adjust the view, as it is building for the old 3.5 inch screens (960px * 640px) found on the pre-iphone 5 devices.
You should also add splash screens for every other supported screen sizes, namely
3.5inches (iPhone 4s and lower)
4inches (iPhone 5, 5c and 5s)
4.7inches (iPhone 6)
5.5inches (iPhone 6 plus)
Related
My app was acting fine till I updated my Xcode. For some odd reason, my UINavigationBar is no longer covering the entire width of the screen for devices iPhone6 and above.
For iPhone 5:
For iPhone 6 and above:
I think you didn't used autolayout. Okay no problem..
Follow below steps:
1. you need to keep it empty on Launch Screen file.
2. Create Launch image source and then add iPhone 6 and 6+ splash screens
Then it will work your navigation bar automatically fit based on device.
I have iPhone oriented application, the UI created using a storyboard, when I run it on 4.7 or 5.5 inch devices it presented as 4 inch screen with black empty space on top and bottom of window.
The project was created on Xcode 6 and I got the issue when I compile it with Xcode 7 but I'm not sure if it's related.
On Xcode 7 you must add the launch screens (on "images.xcassets") of your desired resolution (iphone6 , iphone5...) or instead you can add the splash screen that automatically will work for all resolutions (YourProjectName/General/App Icons and Launch Images).
Hope this helps.
You haven't add added Launch Images with proper resolution in proper place. So your app is considering it only for iphone5 not above so.Place launch Images properly.It will help.Thanks
Here are Apple's answers:
If you don't use launch images, but you do have a Launch Screen (nib
or storyboard) then we synthesize your launch screen at install time.
If you don't have any launch images, and you don't have a launch nib
or storyboard, then you are declaring that you don't support any
screen sizes aside from 320x480
A brand new project should not demonstrate any of these issues
With the iPad Pro you will need a Launch Screen to support the new
screen size (and you need Launch Screens to support multitasking on
iPad in general).
All my old apps are looking good on iPhone6/6+. But when I create new project iPhone 6/6+ treat apps natively. So they look awful. Instead of trying to adjust views using constraints and stuff, I decided it would be better to write app for iPhone 5 and let new iPhones scale it. I know solution is not perfect but is good enought for me. The questions is how to make new iPhones treat my app as iPhone 5 app. How to make them scale it?
Thank you.
You have to provide a LaunchImage with the correct size :
iPhone 6 Splash screen 750 x 1334
iPhone 6 Plus landscape Splash screen 2208 x 1242
iPhone 6 Plus portrait Splash screen 1242 x 2208
I'm answering this by memory as I don't have xcode in front of me, but I'm quite sure it's correct.
You need to create and add 3 launch images to your project of the following sizes:
*640x1136
*640x960
*320x480
Go to project settings, general and select the launch image source option. Select use asset catalog, and create an asset catalog if you don't already have one.
With the asset catalog open you should have a section called launch images, if you do not, tap the '+' button in the bottom left hand corner and add the launch images option to your project. Select the launch images option.
The top row of images are used for iPhone 6/6 Plus, leave these blank. Drag and drop the launch images that you created onto the bottom two rows of images.
Return to your project settings and select the launch screen file option. Remove everything - ensure that the selection is blank. (To do this I selected my main.storyboard and just deleted the text in the text box).
And that's it, now you can automatically zoom your app on the larger devices.
Hope this helps.
We have an iPod app built with base SDK as 5.1.
App has a tabBarController with three tabs and each tab has a UIViewController to load a different view.
The app works fine for iOS 6.1 and iOS 7 (3.5 inch display) simulator and device but when we run the app on
iOS 7 (4 inch display simulator) or device we are getting black bars at the top and bottom of the view screen in all three tabs.
If anyone can suggest reason for this or some feasible solution to this problem, it would be really helpful for us.
Thanks
First thing is that you must add the required default image for 4 inch screen display. Check Properly in you project have image with name Default-568h#2x.png (640 × 1136 pixels)
This Default-568h#2x.png is Necessary for Support app in 4 inch Screen display
Ones you add this image in to you working Project, Remove old Build from device or Simulatore, clear Project and re build and check Hope you issue will solve.
Edit:-
After fix the black Bar issue you can check the device like my answer Give here check this:-
Detect device type
you have two choice if you can't use AutoLayout
First
Create two xib with same class one for 3.5 inch screen and one for 4 inch screen set using macro with checking which screen appear.
Second
Set Self.view frame using macro with checking which screen appear.
There are also other methods you can use for set self.view frame as using window frame or UIScreen
My problem was I accidentally deleted the value found here:
I added back LaunchScreen, and made sure there was a LaunchScreen.xib. Maybe it will help some others.
Ive had the same problem - black bars at the top and bottom. It was simply solved by setting the drop down in "App Icons and Launch Images" to Main_iPhone:
App Icons and Launch Images Screen Shot
I was facing same problem . I just added launch image and it worked for me.
XCode->Click on Project File -> Select Target-> App Icons and Launch Images -> Add launch image source
This worked!
Pay attention to Step#5 and Step#6 below:
1.In xcode, Click on the Project file in Project Navigator
2.Click General tab
3.Type "Main_iPhone" in the Launch Screen File field
4.Save
5.Remove the app from device or simulator
6.Then in Xcode go to Product Menu and then select Clean
7.Build again
I am designing my iPhone app using storyboard and auto-layout. Everything works fine in iOS 7 on both 4 inches and 3,5 inches device.
On iOS 6.1 the app runs like is always on 3,5 inches device, even if is running on a 4 inches device, the black bars on top and bottom appears.
screenshot on the simulator:
Anyone with the same issue? how can i solve this problem?
I think are you Forget to adding splash screen Default-568h#2x.png in to you Project please check Property and set required splash-screen Default-568h#2x.png (640 × 1136 pixels)
Ones you add this image in to you working Project, Remove old Build from device or Simulatore, clear Project and re build and check Hope you issue will solve.
Yes, i'm agree with Nitin. In XCode 5 just create e new LaunchImage Set and add the standard, retina and R4 image in both iOS version (5,6 and 7).
Remember to set this set as default in your project info.
A quick fix is to replace Launch Images with your Storyboard.
In Xcode, go to Target > General, and then: