将 Xcode 更新为 IOS 9 后,应用卡在初始屏幕上并且未加载初始 viewcontroller
After updating Xcode to IOS 9, app stucks on splashscreen and initial viewcontroller is not loaded
在 Xcode 中使用 storyboard
,我有一个运行良好的应用程序,但是在最近的 Xcode 更新(IOS 9)之后,该应用程序卡在了闪屏。
DidfinishLaunchingWithOptions
调用成功,到达函数末尾,但初始viewcontroller未加载
如果我将初始视图控制器切换到另一个屏幕,它工作正常..
怎么可能第一屏不加载初始viewcontroller,设置到第二屏就加载了?
我最初认为它可能与约束或 UI 元素有关,但即使在重置约束并删除 UI 元素(它们只是一组按钮)之后仍然相同问题。 viewcontroller.m 中只有基本代码 ..(它没有被调用,因为我在每个函数中都有控制台日志)
有人有同样的问题或解决方案吗?
编辑 1: 看来它是由 UI 元素之一引起的,在将它们全部删除后,视图确实加载了..现在尝试添加他们一一查看导致错误的原因。
编辑 2: 我将错误跟踪到视图中的一个 imageview 和 textview,没有加载 imageview 和 textview,但没有加载图像和 textview。为图像视图选择不同的图像似乎并不重要。试图找出此 imageview 或 textview 出错的原因。
编辑 3: (不再适用) 有问题的视图在网格中有 4 个图像和 4 个文本视图,似乎图像压开文本视图,发生这种情况时,视图不会加载。 (可能有些约束无法解决..)
编辑 4:
视图看起来像这样(由于 NDA,我无法 post 截图)
Image | Image
Textview | Textview
--------------------------------------
Image | Image
Textview | Textview
如果我们对所有 Textview 使用相同的文本,它会起作用,但是如果我们更改右上角的 Textview 更短 文本,它会卡住并且无法加载。
这是一个错误??我真的迷路了..我重复了同一个实验 3 次,每次我将文本设置为短变体时它都不起作用,对于更长一点的文本值它确实起作用..
编辑5,问题:文字不能太小
当我们将四个 TextView 之一的文本设置为小于十个字符的字符串时,视图不会加载。如果我们使用大于十个字符的字符串(任何字符串),视图加载。
这是一个非常非常奇怪的错误,我们现在正在尝试更改文本视图的边界框大小,看看它是否与此有关。
对于 9 个字符的字符串,视图拒绝加载。有 10 个字符,它加载正常,完全没有问题。没有任何约束问题。
当我们使用空格使其至少包含 10 个字符时,一切正常...
这绝对是一个错误..
好的,所以最后的问题是图像视图下方的文本视图中的 "too small" 文本。为什么文本太小,或者 "too small" 是什么意思,无从得知。除了在这个特殊情况下它是 10 个字符。
解决方案
我将每个文本视图的初始文本更改为至少包含 10 个字符的字符串。在以编程方式将视图加载到我想要的文本后,我更改了文本。这按预期工作并加载了视图。
我会尝试将其作为错误提交给苹果,因为这永远不是正确的行为。谢谢大家对这件事的指点。
在 Xcode 中使用 storyboard
,我有一个运行良好的应用程序,但是在最近的 Xcode 更新(IOS 9)之后,该应用程序卡在了闪屏。
DidfinishLaunchingWithOptions
调用成功,到达函数末尾,但初始viewcontroller未加载
如果我将初始视图控制器切换到另一个屏幕,它工作正常..
怎么可能第一屏不加载初始viewcontroller,设置到第二屏就加载了?
我最初认为它可能与约束或 UI 元素有关,但即使在重置约束并删除 UI 元素(它们只是一组按钮)之后仍然相同问题。 viewcontroller.m 中只有基本代码 ..(它没有被调用,因为我在每个函数中都有控制台日志)
有人有同样的问题或解决方案吗?
编辑 1: 看来它是由 UI 元素之一引起的,在将它们全部删除后,视图确实加载了..现在尝试添加他们一一查看导致错误的原因。
编辑 2: 我将错误跟踪到视图中的一个 imageview 和 textview,没有加载 imageview 和 textview,但没有加载图像和 textview。为图像视图选择不同的图像似乎并不重要。试图找出此 imageview 或 textview 出错的原因。
编辑 3: (不再适用) 有问题的视图在网格中有 4 个图像和 4 个文本视图,似乎图像压开文本视图,发生这种情况时,视图不会加载。 (可能有些约束无法解决..)
编辑 4: 视图看起来像这样(由于 NDA,我无法 post 截图)
Image | Image
Textview | Textview
--------------------------------------
Image | Image
Textview | Textview
如果我们对所有 Textview 使用相同的文本,它会起作用,但是如果我们更改右上角的 Textview 更短 文本,它会卡住并且无法加载。 这是一个错误??我真的迷路了..我重复了同一个实验 3 次,每次我将文本设置为短变体时它都不起作用,对于更长一点的文本值它确实起作用..
编辑5,问题:文字不能太小
当我们将四个 TextView 之一的文本设置为小于十个字符的字符串时,视图不会加载。如果我们使用大于十个字符的字符串(任何字符串),视图加载。
这是一个非常非常奇怪的错误,我们现在正在尝试更改文本视图的边界框大小,看看它是否与此有关。
对于 9 个字符的字符串,视图拒绝加载。有 10 个字符,它加载正常,完全没有问题。没有任何约束问题。
当我们使用空格使其至少包含 10 个字符时,一切正常... 这绝对是一个错误..
好的,所以最后的问题是图像视图下方的文本视图中的 "too small" 文本。为什么文本太小,或者 "too small" 是什么意思,无从得知。除了在这个特殊情况下它是 10 个字符。
解决方案
我将每个文本视图的初始文本更改为至少包含 10 个字符的字符串。在以编程方式将视图加载到我想要的文本后,我更改了文本。这按预期工作并加载了视图。
我会尝试将其作为错误提交给苹果,因为这永远不是正确的行为。谢谢大家对这件事的指点。