应用程序在模拟器中运行,但在设备上运行后移除堆栈 x/y 约束

Posted

技术标签:

【中文标题】应用程序在模拟器中运行,但在设备上运行后移除堆栈 x/y 约束【英文标题】:App runs in simulator but removes stack x/y constraints after running on device 【发布时间】:2016-04-30 00:37:25 【问题描述】:

想知道是否有其他人遇到过这个问题并且知道如何解决它。我有 3 个垂直堆栈视图,每个视图都由一个文本视图和标签组成。它们都包含在一个超级堆栈视图中。该应用程序在模拟器上的每个设备上运行良好。当我连接我的 iphone 并在该设备上运行时,我在情节提要中缺少约束,并且所有字段都未对齐。奇怪的是,即使有对齐错误,该应用程序在所有模拟设备和我的实际 iPhone 中运行良好,对齐是完美的 - 不像故事板上看到的那样。我已经尝试了各种选项 - 更新约束、更新框架、重置为建议的约束等 - 但它并没有回到应有的位置。我正在使用我的项目的副本。我在查找器中做了文件重复。这真的很烦人,因为每次我都必须回溯。

Picture of errors and messy screen

【问题讨论】:

屏幕截图显示了 Interface Builder 中缺少的约束,而不是正在运行的应用程序。您是否添加了缺少的 X/Y 约束? 我确实尝试添加约束,但在使它们成为应有的样子时遇到了问题。奇怪的是,错误仍然存​​在,但正在运行的应用程序上一切正常。我希望我用“复制”制作的副本解决了这个问题。如果是这样,问题出在从 Finder 中复制。 【参考方案1】:

我在网上研究了类似的问题,发现一篇文章/文章提到下载名为“Duplicate”的东西以从 finder 复制文件夹而不是直接从 finder 复制文件夹。

我下载了它并按照说明复制了我的问题应用程序从中复制的同一文件夹。我在所有模拟器设备和我自己的 iPhone 上运行它,没有任何问题。我希望问题是第一次没有从 finder 正确复制所有内容,而现在,使用 Duplicate,它可以解决问题。如果主题问题再次出现,我会补充。

link to the post I found

【讨论】:

以上是关于应用程序在模拟器中运行,但在设备上运行后移除堆栈 x/y 约束的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 构建在设备上运行但在模拟器上失败

React-Native 应用程序在 android 设备上立即崩溃,但在模拟器上运行良好

UniversalLink 不适用于 iOS 14 设备,但在模拟器上运行良好

NSLog 在 iphone 模拟器上运行时输出到控制台,但在设备上运行时不输出

应用程序在少数模拟器上运行,但在真实设备上崩溃 [重复]

我的应用程序正在模拟器上运行并完全运行,但在物理设备上崩溃