I am developing an iPad GUI with 2 uitableview top and bottom, both occupying half the screen with a navigational controller. when i rotate the view, the table does up and hide behind the navigational controller. when launch it doesn't. it only happens when it rotates. Image 1 shows the table when launch. image 2 shows the columns missing when rotating to landscape. image 3 shows the column missing when shifted back to portrait. is it possible to code a fix position on the screen when portrait and landscape? meaning i set the position when detecting the iPad is in portrait, and landscape.
Override willAnimateRotationToInterfaceOrientation:duration: method in your main view controller, and resize your UITableViews by setting their frames.
See also:
http://developer.apple.com/library/ios/documentation/uikit/reference/UIView_Class/UIView/UIView.html#//apple_ref/occ/instp/UIView/frame
http://developer.apple.com/library/ios/#documentation/uikit/reference/UIViewController_Class/Reference/Reference.html#//apple_ref/occ/instm/UIViewController/willRotateToInterfaceOrientation:duration:
Related
Is there a way to rearrange the cells between portrait and landscape using UICollectionView in a way like the following image? Just to be clear, little square on landscape remains on the left side and the biggest one goes to the right.
EDIT
My problem is that in Landscape mode the big square must occupy and fill two rows
I have 2 views. A portrait detail view that when rotated to landscape, does a manual segue to a full screen photo viewer. The portrait detail view returns NO for shouldAutorotate and prefersStatusBarHidden.
When I rotate from portrait to landscape, just before the landscape view fades in, I can see the portrait view resize slightly as the status bar gets hidden and then the status bar moves from the top to the side.
The transition looks a bit ugly. I'd rather the status bar remains visible as the device is rotated to portrait, since it will get covered over by the landscape view anyway. Is it possible to do this?
I don't think this is possible.
The only way I see it working is if you do the rotation yourself and not with the device ability
i am developing an application using autolayout in ios 7. i am moving a label from the top to the middle of the view controller using [UIView commitAnimation] in the portrait mode. the label moves to the middle of the screen.
When i change the device orientation to landscape after animation is over, the label again moves back to the top instead of in the middle of the screen.
how to maintain the animation in both portrait and landscape mode ?
When using autolayout viewDidLayoutSubviews gets called everytime when UI changes. This gets called when your device is rotated from portrait to landscape and sets the position of the label again to the previous. Assuming you have designed your layout with IB. You have to change the position of the label accordingly in viewDidLayoutSubviews than it will work perfectly as expected.
My application is always run in Landscape mode only. I have add four custom buttons on overlay view dynamically. I want to change the position of buttons when orientation change in landscape and portrait mode.How to position my Camera Overlay View buttons in a different location when my device orientation will changing?
Please help me to fix my problem. Thanks.
I have the same problem. It's not that we're not receiving the notifications. The problem is that the camera overlay view doesn't resize itself to fit the new orientation. For example, the view will rotate when going from landscape to portrait but the view still has a landscape aspect ratio, i.e., the view is wider than it is high.
I created a split view controller application. I want to display my buttons and controls in landscape and portrait view differently(only the position).
When I change the orientation to landscape it shows the controls in portrait only. When I click on the cell in the tableview then it will show in correct position. What is the reason for that? Help me please.
I am a little confused about your question, but what I think you are trying to ask is how to change your view if the screen is in landscape or portrait orientation. Without seeing your code it is hard to tell you exactly how to do it, but the general idea (at least how I do it in my code) is that you want to split your code into two parts one that is in landscape orientation, and one that is in portrait orientation. You can tell the difference by seeing if the screen height is greater than the screen width.