我正试图处理Xcode中的布局。我似乎无法找到一篇写得很好的文章,以便我的虚弱思想可以遵循。我有10年的编程经验,但刚进入Objective-C。我需要一些关于处理不同视图的教程。似乎他们会为设计旋转的设备开发一些更好的工具。
这是我的特殊困境:应用程序在纵向视图中加载,并在侧面有几个按钮,如下所示:
[Button]
[Button]
[Button]
然而,当设备旋转时,我希望按钮水平对齐,如下所示:
[Button] [Button] [Button]
那么有没有人有任何建议或知道一个教程来帮助我实现这一目标,以及更好地掌握方向?
答案 0 :(得分:0)
在这种情况下,您的问题的简单答案是:您必须以编程方式执行此操作,或将其放在UICollectionView中。 UICollectionViews实际上是用于显示许多项目,而不仅仅是三个,所以实际上只剩下一件事了:在代码中执行它!
在处理此部分应用的viewController中,您应该使用viewDidLoad
或init
方法在某处运行此行:
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(didRotate:)
name:UIDeviceOrientationDidChangeNotification
object:nil];
这将调用方法- (void)didRotate:(NSNotification *)notification
您可以像这样实现此方法:
- (void) didRotate:(NSNotification *)notification
{
UIDeviceOrientation orientation = [[UIDevice currentDevice] orientation];
if (orientation == UIDeviceOrientationLandscapeLeft)
{
NSLog(@"Landscape Left!");
}
}
在找到设备的方向后,放置您的布局代码。
现金: 我借用了这个帖子的代码,Thx View rotation notifications: why didRotateFromInterfaceOrientation: doesn't get called?