问题标签 [ibdesignable]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
518 浏览

ios - 在设计时设置的 IBInspectable 属性不保持值

我们正在将 IBInspectable 实现到一个大型应用程序中,希望允许在 Interface Builder 中设置一些设置,以减少我们视图中的代码量。我对 IBInspectable/IBDesignable 没有太多经验,我正在寻找一些答案和/或澄清我做错了什么。

我在 UITableViewCell 子类中声明了一个属性,如下所示:

像这样声明属性时,我可以选择在 Interface Builder > Attributes Inspector 中设置该颜色,这是意料之中的。但是,当我设置颜色时,_backgroundColor运行时的值为 nil。

有人可以澄清这里可能发生的事情吗?谢谢!

0 投票
0 回答
257 浏览

xcode - 界面构建器 Designables 开始失败

我的故事板中有一些 IBDesignables。这些Designables昨天工作得很好......但是现在当我打开故事板时,所有Designables都无法构建>:(

我试过了:

  • 刷新所有视图:编辑器->刷新所有视图
  • 重新启动 Xcode
  • 重新启动我的电脑
  • 在 Activity Monitor 中终止与 Interface builder 相关的进程。

我使用 Xcode 6.3.2

0 投票
1 回答
1037 浏览

objective-c - IBDesignable 在 Objective-C 中不起作用

我有许多用笔尖设计的可重用视图,它们都是 NibView 类的子类

我像这样子类化

在 NIB 文件中,我将文件的所有者设置为 ExampleView。一切都完美无缺,故事板和 xib 都可以实时呈现一切。

现在,在 Objective-C 中做同样的事情是行不通的

任何想法?

0 投票
1 回答
2027 浏览

xcode - nib 中的重用标识符与用于注册 nib 的标识符不匹配

我有一个用 Swift 编写的框架/模块,它提供了一些具有 IBDesignable 功能的自定义控件。

目前我正在开发一个基于 CollectionView 的控件。CollectionView 和自定义 CollectionViewCell 构建在 Nib 文件中。要加载 CollectionViewNib 并添加 Designable 功能,我使用这个NibDesignable类。初始化 CollectionView 后,我将 CollectionViewCell 注册如下:

将我的框架作为嵌入式二进制文件添加到另一个应用程序后,我可以按预期使用我的新自定义 CollectionView,但不幸的是,Designable 功能无法正常工作,而是收到以下错误消息:

如上所述,我的控制在模拟器和手机上工作,所以不,我不使用不同的标识符。我不知道 XCode 从哪里得到这个 ibCollectionViewCell标识符,但是当我将它用作我的 CollectionViewCell 的标识符时,每件事都像一个魅力。

这个标识符来自哪里以及为什么 XCode 不能用我自己的标识符加载我的自定义 CollectionViewCell 的任何想法?

0 投票
1 回答
1269 浏览

objective-c - 如何在仅 Objective-C 的项目中将 IBDesignable/IBInspectable 与 CocoaPods 一起使用

我的项目只是 Obj-C。通过 Cocoapods,我尝试安装一个利用 IBDesignable 和 IBInspectable的 Obj-C 库。如果我将该项目添加到我的库并运行“pod install”,则在构建/运行时会出现两个错误:

好的,显然要利用 IBDesignable/IBInspectable,您的代码需要位于框架中,而不是静态库中。看来我需要做的就是将其添加到我的 Podfile 中:

当我这样做时,我可以在 Interface Builder 中看到所有内容,但是当我构建/运行时,它找不到AFNetworking.h. 我不认为该错误特定于 AFNetworking,它只是我的 Podfile 中的第一个 pod。

如果我使用的是 Swift,答案似乎是我需要将 Podfile 中的所有库添加到我的 Swift/Obj-C 桥接头中。

即使我没有使用 Swift,我还需要创建一个桥接头吗?

这是我的 Podfile(没有 DownloadButton pod,也没有 use_frameworks!):

0 投票
3 回答
1433 浏览

xcode - 是否可以使 @IBDesignable 覆盖 Interface Builder 值?

例如,我想子类化UIButton并将其字体20.0f默认设置为。我可以这样写:

但这不会影响Interface Builder中的预览,默认情况下,所有自定义按钮都以15.0f字体大小显示。有什么想法吗?

0 投票
3 回答
3797 浏览

ios - IBDesignable 永远不会完成更新故事板中的 UITableViewCell

这是一个与此类似的问题,并不完全相同。

我创建了一个 UITableViewCell 的子类,它引用了一个自定义笔尖并将其标记为 @IBDesignable。在代码和 .xib 文件中所做的更改会在模拟器和设备上正确显示,但不会在情节提要中显示。

故事板显示永久的“Designables 更新”。

设计更新

将问题分解为仅将 UITableViewCell 子类化并将其标记为 @IBDesignable 的不太复杂的测试会导致相同的永久“Designables Updating”。

有没有人成功创建了@IBDesignable UITableViewCell 子类?这发生在 Xcode 7 beta 6 和 beta 5 中。

0 投票
1 回答
35 浏览

ios - @IBDesignable 中的 var 值能否依赖于外部值,例如视图的框架?

我想在@IBDesignable 视图中绘制一个形状孔。为此,我需要视图的大小,它位于视图层次结构的上方。这个视图通过约束改变它的大小。

如何检索框架?可能这根本不可能,因为我们所依赖的视图是稍后绘制的?但它的帧大小可能会提前恢复?

形状在 layoutSubviews 中绘制:

0 投票
1 回答
94 浏览

ios - 我们可以将 IB_DESIGNABLE 与类别一起使用吗?

我发现 IB_DESIGNABLE 非常有用,我可以使用 SubClassing 和 IB_DESIGNABLE 设计任何东西,但是是否可以使用 IB_DESIGNABLE 与我们在子类中使用的类别相同?

0 投票
0 回答
890 浏览

ios - IB_DESIGNABLE 未出现在 Interface Builder 中

我正在使用 Objective-C 在 XCode 6.4 中制作自定义 UI 组件。在我每次更改 IBInspectable 值之一时使用该组件的主情节提要中,我收到以下错误:

Main.storyboard: warning: IB Designables: Ignoring user defined runtime attribute for key path "icon" on instance of "UIView". Hit an exception when attempting to set its value: [<UIView 0x7fc33a5601c0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key icon.

我正在加载一个 .xib 文件,并且我正在覆盖 initWithCoder 和 initWithFrame 方法,如下所示:

在 initWithCoder: 中,我不得不检查是否有子视图,因为它进入了无限循环(loadView 中的 xib 文件再次调用 initWithCoder:。

因此,当我构建并运行它时,它会正确显示(但仅使用 NIB 中的默认值而不是我在情节提要中传递的正确值),但组件的实时预览根本不会显示在 Interface Builder 中.

更新

这是自定义 UI 组件的头文件