ios - 在 Interface Builder 中交换 View 但保持约束

标签 ios iphone xcode ipad interface-builder

在 Interface Builder 中,我有一个 UIView,它附加了一组复杂的约束。将此 UIView 替换为 UIImageView 而无需重新创建所有约束的最佳方法是什么?

删除 UIView 也会删除它的约束。

注意:简单地将 UIView 的类设置为 UIImageView 是行不通的,因为它没有提供与 ImageView 相关的所有可变属性。

最佳答案

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

然而,有一个 hacky 方法可以做到这一点,如博客所述:http://codenetwaves.blogspot.com.br/2012/09/change-view-to-scrollview-in-xcode.html

步骤是:

  1. 右键单击 Storyboard,选择打开为 --> 源代码

  2. Storyboard是一个 XML 文件。找到您要更改的 View 。替换 <view ...> ... </view><imageView ...> ... </imageView> .不要更改任何其他内容。

  3. 再次右键单击 Storyboard,然后在 Interface Builder 中打开。 View 已转换为 UIImageView s 并且您可以访问所有正常的 UIImageView属性。

关于ios - 在 Interface Builder 中交换 View 但保持约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31389463/

相关文章:

ios - UIWebView 在从另一个 ViewController 调用的方法中为 null

objective-c - 通过用户交互使用 nib 加载 UIView

ios - mxSignpost 事件在 Xcode Organizer 中可见吗?

iphone - App Store (iTunes Connect) 的 512x512 图像,Apple 会像在手机上那样进行圆角处理吗?

ios - 如何在 ios UITest 中通过其 testID 获取 React Native TextInput

ios - 如何从 Xcode 中删除多余的 iOS 模拟器条目?

ios - 在 Xcode iOS 中链接 C 库

ios - 无法为 armv7 和 armv7s 编译 FFMpeg

android - Android 上的 phonegap 换行警报

iphone - 在ios中使用打印机打印nsmutable数组