interface-builder - 如何在 Interface Builder 中绘制自定义内容?

标签 interface-builder swift ios8

我观看了“Interface Builder 中的新增功能” session 视频并尝试复制显示的代码,但不幸的是,当我将 View 分配给具有 @IBDesignable 的自定义类时,出现 2 个错误:

Main.storyboard:错误:实时 View :无法更新自动布局状态:无法加载包“swiftTest”,因为它的可执行文件不可加载。

Main.storyboard:错误:实时 View :无法呈现 _TtC9swiftTest14ControllerView 的实例:无法加载包“swiftTest”,因为其可执行文件不可加载。

在稍后的视频中,我看到要获得实时 View ,您必须执行以下步骤: 1. 创建框架 2. 创建类 3. 标记为可设计

我如何迈出第一步?

谢谢

最佳答案

据我目前了解(Xcode 6 Beta 3 之前),@IBDesignable 只能在单独 框架目标中声明的 View 中工作。 但是,我也很难添加它,因为我没有各种链接中描述的“加号”按钮(因为隐藏项目和目标列表箭头选项已关闭)。

因此,选择您当前的项目目标,然后只需使用 xcode 菜单选项: 编辑器 > 添加目标... 然后选择 框架和库 > Cocoa Touch Framework

顺便说一句,为了测试@IBDesignable,本教程作为起点非常有效: http://www.weheartswift.com/make-awesome-ui-components-ios-8-using-swift-xcode-6/

该教程中需要注意的一件小而重要的事情(如果您在屏幕上关注它而不是关注其完整的 github 代码列表)是您的 View 类必须使用 @IBDesignable 进行前缀/装饰,例如 自定义 View 类:UIView {...} 应该 @IBDesignable 类 CustomView : UIView {...}

关于interface-builder - 如何在 Interface Builder 中绘制自定义内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24065652/

相关文章:

ios - 我怎样才能在 UIStackView 中有多个宽度和高度的 subview

ios - 提供 Tableview 自定义来源的背景图像

ios - 处理 iPhone 6/6+ 启动图像

ios - SceneKit - 消除相机透视失真

ios - 如何创建左侧带有后退按钮的导航栏?

cocoa-touch - 如何将标签栏项目连接到操作?

Xcode 4 - IB - 均匀分布控件?

ios - 当用户快速点击一个单元格时触发一个 Action

ios - 如何更改 JSQMessagesController 中的发送按钮图像

ipad - iOS 8中的UIActivityViewController错误