问题标签 [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.
ios - 框架中的 IBDesignable 控件
我在 IBDesignable https://developer.apple.com/videos/play/wwdc2014-411/上观看了精彩的视频,并创建了一个带有控件的框架,供我的主应用程序使用(如有必要,还可以共享) )。
根据这个很棒的教程,我使用 IB 创建了一个自定义“复合”控件,http://supereasyapps.com/blog/2014/12/15/create-an-ibdesignable-uiview-subclass-with-code-from -an-xib-file-in-xcode-6
该技术效果很好,我现在可以将我的可设计控件放在我的故事板上。
问题是我注意到我的“框架”中的所有 IBOutlets 和 IBAction 都出现在故事板上的 IB 中。但我想隐藏它们!控件的功能隐藏在框架内,IBOutlets 和 IBActions 已被创建以促进它们在该框架内的操作,并通过委托或其他方式处理对外部世界的通知。
这种技术很有说服力,因为我可以使用它来创建一个可重用的“复合”控件库,但它对库的实现者隐藏某些 IBOutlets 和 IBAction 以确保“安全”元素会很有用
这可以做到吗?是否有任何标志可以隐藏框架内的 IBOutlet/IBAction 元素?
ios - 无法在界面生成器中加载 IBDesignable xib
我有一个xib
( childXib
) 文件通过其所有者链接到其自定义UIView
swift 文件。
这就是我初始化自定义的方式UIView
:
当我想在另一个( ) 中添加这个xib
( ) 时,我收到以下错误:childXib
xib
parentXib
错误:IB Designables:无法呈现 MyRootView 的实例:代理引发异常。
MyRootView
文件链接到哪里parentXib
错误:IB Designables:无法更新自动布局状态:代理引发“NSInternalInconsistencyException”异常:无法在包中加载 NIB:“NSBundle(已加载)”,名称为“MyIBDesignableCustomViewFilename”
MyIBDesignableCustomViewFilename
链接到的文件在哪里childXib
。
当我通过从 中单击来调试它时,它Debug
在该行中不起作用:Custom class
Identity inspector
所有xib
文件都Copy Bundle Resources
在Build Phases
.
知道有什么问题吗?
swift - IBDesignable 和 IBInspectable 可以在 iOS7 手机上运行吗?
我正在使用 Xcode7.1,并使用@IBDesignable
和@IBInspectable
自定义视图。当我设置Deployment Target
to时iOS7.0
,我设置的属性IBInspectable
不起作用。它可以在 iPhone 上使用iOS7.0
吗?
ios - 使 Interface Builder 使用当前选择的尺寸类绘制 IB_DESIGNABLE 子视图
我有一个 XIB(文件的所有者:)DesignableView
,我在 Interface Builder 中以两个不同的大小类进行了布局:
DesignableView.xib:任意 | 任何
DesignableView.xib:常规 | 任何
我想DesignableView
在另一个 XIB 文件中使用它。由于我是WYSIWYG的忠实粉丝,因此我制作了视图IB_DESIGNABLE
并将以下代码添加到文件的所有者类中:
设计视图.h
设计视图.m
这段代码所做的就是在 Interface Builder 中使用它的任何地方渲染视图。
现在我创建另一个 XIB 文件并将其文件的所有者设置为ContainerView
. 我向其中添加了两个空 UIView,并将它们的类属性设置为DesignableView
. Interface Builder 会在几秒钟后更新视图,并DesignableView
按照第一个 XIB 中的布局显示两个 s - 正如预期的那样。
但是,它总是加载在“任何 | 任何”尺寸类中指定的布局DesignableView
- 无论ContainerView
的尺寸类如何(参见下面的屏幕截图)。
ContainerView.xib:任意 | 任何
ContainerView.xib:常规 | 任何
(在运行时,DesignableView
总是以正确的大小类布局出现。)
有什么方法可以让 Interface Builder 以正确的尺寸等级显示 IB_DESIGNABLE 视图?
即想要的行为是:
ios - IBDesignable 在尝试调用 loadNibNamed 时崩溃 EXC_BAD_ACCESS
我有一个名为DesignableControl
. 我在我的自定义视图中使用它,以便我可以看到它们在情节提要中呈现。这是基类:
这是我的子类StackedButton
:
上面的代码在我运行应用程序时运行并且看起来很好,但是,当我在情节提要中查看它时,它会EXC_BAD_ACCESS
在以下行中使 Interface Builder 进程崩溃DesignableControl
(为了清楚起见,将其分开):
当我第一次编写这段代码时,它曾经可以工作,但似乎在最新版本的 Xcode(截至本文时为 7.2.1)中被破坏了。我究竟做错了什么?
xcode - Sse IBInspectable 和 IB_DESIGNABLE 错误更改未显示在情节提要中?
我阅读了这篇文章IBInspectable / IBDesignable和流程步骤,但我发现更改没有立即呈现在情节提要上。有人知道为什么吗?我的 Xcode 版本:7.1
我的主要代码:
视图控制器.h
UIView+CornerRadius.h
UIView+CornerRadius.m
interface-builder - 无法渲染 ClassName 的实例:代理在 bundle 中加载 nib 时抛出异常
当我在故事板或另一个 nib 中包含我的自定义 IBDesignable 视图时,代理崩溃并抛出异常,因为它无法加载 nib。
错误:IB Designables:无法更新自动布局状态:代理引发“NSInternalInconsistencyException”异常:无法在包中加载 NIB:“NSBundle(已加载)”,名称为“StripyView”
这是我用来加载笔尖的代码:
当我在模拟器中运行时,视图从笔尖正确加载,为什么它不会显示在 Interface Builder 中?
ios - 更改 CAShapeLayer 路径
我有一个按钮,我想根据帧大小进行缩放。但是,当我更改底层 CALayer 路径时,它们不会得到更新。在updateLayerProperites
函数中,我使用CALayer
'asetValue
函数来更改路径。我也尝试过path
直接设置属性,kiteShape.path = kitePath.CGPath
但这也不起作用。如何缩放绘图?
objective-c - IBInspectable 属性值未在 xib 中更新
我在使用 IBInspectable 属性时遇到了一个小问题,不确定它是否与我的 xibs 和 xib 使用有关。我正在尝试在多个视图控制器之间重用自定义控件。该控件是一个自定义选项卡管理器:
IBInspectable 属性在此 xib 中配置为:First、Second、Third。
这是头文件的相应代码。
这在 TabContainerView.xib 中运行良好,没有问题。现在,当我尝试在两个不同的视图控制器中使用此控件时,我遇到了问题。我的两个视图控制器也是从 Xibs 加载的。
在视图控制器 1 中,我有这样的东西:
在视图控制器 1 中,我将自定义视图子类化为 TabContainerView 子类,当我运行应用程序时它工作得很好。我还将文本更改为特定于该视图控制器。List、Map、Filter 是视图控制器一的 IBInspectable 属性值。在视图控制器 2(未显示)中,我做了完全相同的事情,但是视图控制器 2 特定的不同 IBInspectable 属性值。但是,当我运行应用程序时,这些值永远不会更新,并且始终保持为 First、Second 和 Third . 我不确定我正在做的事情是否会导致此问题,但我们将不胜感激任何帮助或提示。(IBDesignable 似乎在它中断的地方给了我很多警告,并且不确定它是否只是为 xib 加载最后保存的值。)