越来越合并在故事板文件inferredMetricsTieBreakers冲突(getting me

2019-08-01 05:40发布

每当我在故事板文件有冲突,我通常可以解决这个问题。 不过,我现在已经来到了两次在两周内的问题。

在我的故事板文件的最底部,我看到一个名为“inferredMetricsTieBreakers”块,用一束包含在“SEGUE”标签。 看来,在我的本地回购一些赛格瑞是冲突与远程回购另一SEGUE。 为了安全起见,我可能只是“选择两个”。 但由于这一次发生前,恐怕它会继续发生,最终有我的故事板文件的末尾这些SEGUE引用一个长长的清单。

只是想知道如果任何人是知识渊博密切有关文件中这些标签,还是我应该只是一味地继续只是“同时选择”,而忽略了问题。

谢谢,-Dan。

Answer 1:

同样的事情会在这里。 使用“可同时选择”方法后,得到了我的故事板文件中的错误。 研究发现,搜索的SEGUE引用故事板导致这是里面提到一个SEGUE inferredMetricsTieBreakers部分。 从列表中删除的SEGUE解决了我的破构建。

要尝试找出这个东西inferredMetricsTieBreakers呢,我第一次尝试删除整个部分。 打破我的身材。 接下来,我删除了所有项目。 在构建时,Xcode增加2种新的和不同的塞格斯到我的清单(合并我有3之前)。 我正在创建的应用程序工作正常。

我的结论:它是安全的删除所有项目,并执行干净的构建。 这将让你的故事板的清洁。



Answer 2:

在故事板每个视图控制器有“模拟指标”,您可以在属性检查器中看到:

一些这些度量被推断(因此,推断指标)。

正如@thesystem提到的,如果一个给定的视图控制器是多发性塞格斯的目的地,有可能是塞格斯的源视图控制器的模拟度量之间的差异。 为了解决这些差异IB挑选一个赛格瑞解析为目标视图控制器所推断的度量时打破平局。

@里克- pastoor的结论,即它是安全的删除整个inferredMetricsTieBreakers部分是在IB正确可以只选择不同的决胜塞格斯。 但是,不能保证新领带断路器会导致IB相同的布局结果。*

例如,我的结构为其中的情况下,取决于平局决胜SEGUE,视图控制器示于IB具有或不具有一个状态栏。 其视图维护的568pts的高度在这两种情况下,使得顶部布局导向件的位置在不断变化。 此迅速扩大为其他不期望的(和意义不大)改变到的约束到顶部布局引导视图的帧。

根据这些意见,选择这两个推断指标的新老集是不可取的。 取而代之的是,删除这两个集,然后在IB打开故事板,允许联系,提交合并前被打破。 为了避免由于在平局决胜SEGUE的变化不期望的帧的变化,挑选目标视图控制器的有关模拟度量不是“推断”一些其他值。 这将确保IB产生一个一致的布局结果。

*在运行时结果应该是相同的,除非有依赖于初始布局后立即视图解档任何逻辑。



Answer 3:

它看起来像,发生连接断路器时在故事板中一个视图控制器被从两个或更多个其它视图控制器经由塞格斯连接,并且其模拟度量设置被设置为“推断”,但Xcode中不能确保推断装置正好一个指标设定(横向或在任何情况下人像)。

我通过改变模拟度量所有控制器“推断”和所有的度量是从具有固定的模拟度量设置为“风景”的控制器推断固定它。 之后,我删除了决胜局SEGUE IDS从部分(但不是节本身)。



Answer 4:

从推断到自由形式(的Xcode 8,夫特3)改变的指标。 解决我的问题。



文章来源: getting merge conflicts with inferredMetricsTieBreakers in Storyboard file