Cannot fix the viewcontroller to landscape - objective-c

I try to fix my viewcontroller to landscape using Simulated Metrics by changing the orientation to Landscape (like change orientation. It worked a few days ago. But when I created a new project (a single application), and repeat these steps, it does not work anymore.
Is there any solution for that? Or I missed something?
Note: I am using XCode5 and iOS 7.

Set the Device Orientation of the Deployment Info to Landscape Left, the problem will be resolved.

Related

ScrollView UI Issue in ios 7

I am new to ios 7. I have to create an iPhone App which supports ios version 6.0.I created an Empty Application and I am using StoryBoard for designing UI's.
This is the screen that is generated in ios 6.1.3. On landscape mode the design is :
I am unable to see the field Firstname and its textfield.I haven't used AutoLayout.Here is the design View in xib.
It should support both the landscape and portrait orientations.How Can I do that?
In ios 7, the same UI in simulator is :
Please help me to solve this UI Issue...
You have to uncheck the Adjust ScrollView Insets, like this to solve that issue of not showing firstname textfield.
and your other problem will be solved by using autolayout.
you need to set every view controller to edgesForExtendedLayout = UIRectEdgeNone for iOS7 version. If you set this the component alignment will be proper as per iOS6 version.
Hope this may be helpful

Adding iOS 7 version of iPhone 4-inch launch image to project breaks launch image when run on iOS 7

I'm running into a problem on our landscape only app that targets iOS 6 and 7. Xcode gives me the following warning:
An iPhone Retina (4-inch) launch image for iOS 7.0 and later is required.
If I add the required images, when I launch the app on iOS 7, I get a black launch image shown. On iOS 6, it displays correctly. But without the images, it works just fine on both iOS 6 and 7.
I am already using Asset Catalogs in this project, so I don't think that's an issue.
I would really like to get rid of this warning, but I haven't been able to figure out a way around it.
XCode is looking for Portrait orientation for iPhone. You need to provide it for the launch image, but don’t let your application to rotate when device is in Portrait mode.
In order to do this you need to do the following:
Go to General -> Deployment Info -> Device Orientation. Deselect Landscape Left and Landscape Right. Select Portrait, then Landscape Left and Landscape Right, order is important!
Add the following function to your code (if not yet):
-(NSUInteger)supportedInterfaceOrientations
{
return (1 << UIInterfaceOrientationLandscapeLeft) | (1 << UIInterfaceOrientationLandscapeRight);
}
That’s all!
In my case (landscape only app), I was able to fix it by doing the following:
adding portrait to the supported orientations for the iPhone in my Info.plist
replacing shouldAutorotate: methods with supportedInterfaceOrientations and preferredInterfaceOrientationForPresentation in my view controllers.
added application:supportedInterfaceOrientationsForWindow: to my app delegate.
Also I had to make sure that in the Info.plist that the portrait orientation was listed first. Xcode had added it to the end of the list, but if it was there, it would still be a black display on launch. Moved to the top, it was properly detected by iOS when the app was launching.
LaunchImage import a 640*1136 picture,
BTW, LaunchImage in Images.xcassets
sample picture

UIViewcontroller's view frame starting at unexpected location

We are started to convert our iOS 6 application into iOS 7. I tried to create one screen for my application. I used Xib file for design, I designed the screen from top to bottom with UILabel and UIButtons. When I tried to run the app in Simulator it showing differently from xib design. In simulator the designs are came down and bottom UILabel has hide.
I got the self.view.frame from viewDidLoad() was (0,64,32,504). But, it is showing correctly in viewDidAppear (0,0,320,568).
How can I resolve this issue in Xcode 5? Could you please help me to solve this.Looking forward your reply. Thanks.
You cannot depend on the frame in -viewDidLoad, because it hasn't been resized for the device at that point. You need to wait for -viewDidAppear.

xCode: setView always portrait though device in Landscape

I have encountered a problem developing an iPad app with xCode.
When I load a view into my rootViewController like this
[self setView:viewController.view];
The view is always displayed in Portrait even though the device is rotated to landscape.
I checked all options and tried changing the shouldAutoRotateToOrientation method and it seems to have nothing to do with it.
If I rotate the device to portrait and then back to landscape it works.
Does anybody know why this is happening?
Best regards,
Matteo
The problem was that I was nesting viewControllers which leads to bad behavior like rotation notifications not being sent to certain ViewControllers.

how to change mainwindow.xib's orientation to landscape? [duplicate]

I appreciate I'm probably missing something basic here, but...
My iPad app will only support landscape mode, and has a MainWindow.xib Window that I'd like to work on in landscape mode in XCode 4, however the pull-down menu to change this (Simulated Metrics -> Orientation) is always grayed out.
I notice that Views can be rotated just fine, it's only Windows that can't be rotated in XCode 4 using this setting.
Is there a workaround for this, or do I have to put a View on top of the MainWindow in order to rotate it?
I think it's because apps always starts up in portrait and then rotates to appropriate oriantations. From the UIViewController docs:
Note: At launch time, applications should always set up their
interface in a portrait orientation. After the
application:didFinishLaunchingWithOptions: method returns, the
application uses the view controller rotation mechanism described
above to rotate the views to the appropriate orientation prior to
showing the window.
So you'll need the UIViewController magic for the simulated metrics to make any sense. If you used the "Window-based application" template as a starting point for your project try the "View-based application" template instead.