交换视图但在Interface Builder中维护约束

时间:2015-07-13 17:12:28

标签: ios iphone xcode ipad interface-builder

在Interface Builder中,我有一个UIView附加了一组复杂的约束。在不必重新创建所有约束条件的情况下,为UIView交换此UIImageView的最佳方式是什么?

删除UIView也会删除其约束。

注意:简单地将UIView的课程设置为UIImageView将无效,因为它不会为我提供与图片视图相关的所有可更改属性。

2 个答案:

答案 0 :(得分:23)

令人愤怒的是,没有明智的答案。 IB根本无法让您切换控件类型。哦,Xcode,你确实让我们失望了。

然而,有一种hacky方式,这个博客描述:http://codenetwaves.blogspot.com.br/2012/09/change-view-to-scrollview-in-xcode.html

步骤如下:

  1. 右键单击故事板,选择Open As - >源代码

  2. 故事板是一个XML文件。找到您要更改的视图。将<view ...> ... </view>替换为<imageView ...> ... </imageView>。不要改变别的。

  3. 再次右键单击故事板,然后在Interface Builder中打开。视图已转换为UIImageView,您可以访问所有正常的UIImageView属性。

答案 1 :(得分:0)

我认为您需要手动再次创建所有约束,但我会等待删除旧的UIView并在复制新UIImageView上的所有约束参数时将其用作参考。