Xcode 6 GM iPhone 6模拟器 - 没有正确调整大小的故事板,看起来放大了

时间:2014-09-09 22:14:16

标签: ios xcode uiviewcontroller storyboard xcode6

我正在使用新的Xcode 6 GM Seed并在iPhone 6和iPhone 6 Plus模拟器上测试我的应用程序。我对之前正在研究的一些项目产生了一种奇怪的影响,即视图似乎正在获得“放大”效果。

这是一个例子。这两个视图控制器完全相同(减去不同的导航项文本),直到标签文本大小。但是,您可以看到视图显示不同。

zoomed

normal

请注意,具有奇怪缩放效果的项目的部署目标为8.0。

注意: 通过在新的Xcode 6 GM Seed中创建项目,我得到了正常的工作(不适用的项目是在旧版本的Xcode上制作的)。

6 个答案:

答案 0 :(得分:22)

这是默认设置,这就是所有现有应用在新iPhone上运行的方式 - 它们将被“缩放”。

要创建一个实际使用额外屏幕尺寸的应用,您必须使用4“iPhone,添加特定于两个iPhone 6的特定启动图像。

如果您使用的是资产目录,请转到LaunchImages资产目录并为两个新iPhone添加新的启动图像。您可能需要右键单击并选择“添加新启动图像”以查看添加新图像的位置。

此外,使用启动屏幕xib文件而不是图像立即解决了这个问题,这是推荐的前进方式。以下是向您的应用添加启动屏幕的步骤:https://stackoverflow.com/a/25763870/422288

答案 1 :(得分:2)

添加Launch Image无法解决此问题。

您需要将LaunchScreen.xib添加到项目中,并将Launch screen interface file base name - LaunchScreen添加到Info.plist

使用Xcode 6 GM创建一个新项目。您将看到LaunchScreen.xib是什么。您可以将其复制到现有项目中。

答案 2 :(得分:2)

对于新的发布图像尺寸,Apple似乎没有更新文档,但您可以从Xcode中找到它们。如果按Maddy所述添加新的启动图像,则可以在检查器面板中查看新的尺寸。 iOS 8包含三个新图像,如果状态栏在启动时隐藏,则不需要不同的图像。尺寸为:

iOS 8 iPhone Portrait
Retina HD 5.5  1242x2208
Retina HD 4.7  750x1334

iOS 8 Landscape
Retina HD 5.5  2208x1242

您可以在Xcode中添加它们或编辑.xcassets文件中的json文件并将图像放入包中。如果您选择编辑包,请将这些行添加到文件顶部:

{
      "extent" : "full-screen",
      "idiom" : "iphone",
      "subtype" : "736h",
      "filename" : "Default-736h@3x.png",
      "minimum-system-version" : "8.0",
      "orientation" : "portrait",
      "scale" : "3x"
    },
    {
      "extent" : "full-screen",
      "idiom" : "iphone",
      "subtype" : "736h",
      "filename" : "Default-Landscape@3x.png",
      "minimum-system-version" : "8.0",
      "orientation" : "landscape",
      "scale" : "3x"
    },
    {
      "extent" : "full-screen",
      "idiom" : "iphone",
      "subtype" : "667h",
      "filename" : "Default-667h@2x.png",
      "minimum-system-version" : "8.0",
      "orientation" : "portrait",
      "scale" : "2x"
    }

我保留了之前用于肖像文件的命名约定。以前手机上从来没有风景选项,所以我保留了iPad的命名惯例。当然,你可以为他们命名。

编辑:请注意,唯一将以横向模式启动的手机是iPhone 6 Plus。其余手机只能以纵向模式启动。

答案 3 :(得分:1)

@rmaddy说的大部分内容都有效,但是当我转到Images.xcassets配置LaunchImage时,我只需选择“LaunchImage”,并选择“Attributes inspector”,在检查器页面中,您将看到相应的配置选择,这些步骤也适用于应用程序图标

答案 4 :(得分:0)

@JScarry,你的解决方案还可以,但不允许在iPhone 6上显示风景图像。Here is a solution that works(它需要横向和纵向图像在同一维度350x667,景观图像应该只是旋转)

答案 5 :(得分:0)

对我来说解决问题的是:

我不得不点击项目和目标,并将目标设备系列更改为不仅指向iphone,还指向iPad。只有这样,放大的变焦就消失了

enter image description here