我正在创建一个可ibdesignable的组件,以便我可以在Xcode Storyboard中看到该组件渲染。该组件只是其他组件的组成。不幸的是,其中一个组件需要一个UiviewController才能正常运行。是的,不好,但是我无法控制它。
该组件在应用程序中运行良好,但在设计时间呈现不正确,因为该场景的UiviewController不可用。我尝试了
- 进步响应链,寻找uiviewController
- 在组件上创建一个iboutlet并将其连接到视图故事板中的控制器
这些都没有起作用;视图控制器始终为零。有任何建议吗?
uiviewController不能以ibdesignable模式呈现。您只能在视图工作人员中进行ibdesignign。
样本:
import UIKit
@IBDesignable
class SMButton: UIButton {
override func layoutSubviews() {
super.layoutSubviews()
layer.cornerRadius = 6
layer.borderColor = UIColor.baseInstagram.cgColor
layer.borderWidth = 0.66
titleLabel?.font = UIFont.systemFont(ofSize: 15)
titleLabel?.textColor = UIColor.baseInstagram
}
}
样品是带边框的圆形按钮。
不幸的是,ibdesignable的组件的周围环境都无法影响组件本身。