ios - 如何使用 IBInspectable 数据进行自定义 segue
问题描述
我IBInspectable
在我的 custom中使用过UIViewController
,它可以工作,我可以修改界面生成器中的值。
但是,当我IBInspectable
在我的 custom中使用时UIStoryboardSegue
,它不起作用,我在 interface builder 中看不到变量。
是不可能IBInspectable
在 a中使用UIStoryboardSegue
,还是我做错了什么?
这是我的代码。
class EmbedSegue: UIStoryboardSegue {
@IBInspectable var childLevel = 0
override func perform() {
var container:ContainerVC?
if childLevel == 0 {
container = source as? ContainerVC
} else if childLevel > 0 {
var target:UIViewController? = source
for _ in 0..<childLevel {
target = target?.children.first
if target == nil {
break
}
}
container = target as? ContainerVC
} else if childLevel < 0 {
var target:UIViewController? = source
for _ in 0 ..< -childLevel {
target = target?.parent
if target == nil {
break
}
}
container = target as? ContainerVC
}
guard let _container = container else {
var vcName = Utility.className(source)
if let name = source.nibName {
vcName = name
}
print("Unable to perform embed from \(vcName) with child level \(childLevel)")
return
}
_container.embed(destination)
}
}
解决方案
推荐阅读
- hibernate - 测试中的休眠 OnDelete 级联不起作用
- reactjs - 如何使用 setState() 将局部变量值分配给状态?
- c# - 如何使用线渲染器从 A 点到 B 点绘制正弦波
- mysql - 如何获取线程 SQL Query 中的最后一条消息
- javascript - 如何将下拉选定值分配给下一个 td 中存在的输入字段?
- android - 在 Kotlin 中将 BindView 实现到 MainActivity 时出现错误“未解决的参考:ActivityMainBinding”
- android - Flutter 改变闪屏背景颜色
- reactjs - 如何从 React 应用程序连接到 sqlite db?
- apache-flink - 如何为 Apache Flink 中的会话窗口分配 id?
- prestashop-1.7 - paypal 客户中的 prestashop 发送付款错误