iPhone / iPad iOS7中的设备方向问题

时间:2014-02-27 06:29:03

标签: ios iphone objective-c ipad

在我的应用程序中,我使用iPhone和iPad两种设备。现在主要问题是设备方向。我想同时使用纵向和横向。但是当我向右或向左旋转时,我得到了这种类型的视图。

此外,当我打开自动布局选项检查时,我也发现了这样的新图像。

When turned on autolayout

This is original image

this when landscape

我使用firstViewController并且我也使用方法进行定位,当我在其上放置断点时,它不会被调用,这是我的代码:

在fVC.m中:

    -(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {

    if (interfaceOrientation == UIDeviceOrientationLandscapeLeft || interfaceOrientation == UIDeviceOrientationLandscapeRight)
    {
        if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPhone) {
            locationBtn.frame = CGRectMake(200,200,86,86);
           cameraBtn.frame  = CGRectMake(200,200,86,21);

        }

        else

        {

            locationBtn.frame = CGRectMake(200,200,86,86);
            cameraBtn.frame  = CGRectMake(230,200,86,21);
        }
}
    return 0;
}

3 个答案:

答案 0 :(得分:1)

Properties

根据您的需要更改属性..

你想放大或想要放在其他地方.. ..

答案 1 :(得分:0)

-(BOOL)shouldRotate....不再被称为iOs7 尝试将此代码移至-(void)didRotate..或 (更好的是,因为你的动画会与内置动画同步)

-(void)willRotate...

答案 2 :(得分:0)

仅启用Autolayout不会添加任何约束。

在.XIB中选择您的项目,然后选择重置为所选约束。

这可能有助于您达到预期目标。

我建议你学习并开始使用Autolayout。帮助您入门的快速链接: http://www.youtube.com/watch?v=r1sc7NI6-wo

更改为:

enter image description here

输出:

enter image description here

enter image description here