【问题标题】:IBDesignable View - need ViewController at design timeIBDesignable View - 在设计时需要 ViewController
【发布时间】:2017-06-03 21:39:19
【问题描述】:

我正在创建一个 IBDesignable 组件,以便我可以在 Xcode 故事板中实时看到组件渲染。组件只是其他组件的组合。不幸的是,其中一个组件需要 UIViewController 才能正常运行。是的,不好,但我无法控制它。

该组件在应用程序中运行良好,但在设计时无法正确呈现,因为该场景的 UIViewController 不可用。我试过了

  • 沿着响应链前进,寻找 UIViewController
  • 在组件上创建一个 IBOutlet 并将其连接到视图 故事板中的控制器

这些都没有奏效;视图控制器始终为零。有什么建议吗?

【问题讨论】:

    标签: swift xcode uiviewcontroller ibdesignable


    【解决方案1】:

    无法在 IBDesignable 模式下呈现 UIViewController。 您只需在视图人员中使用 IBDesignable。

    样本:

    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
    
        }
    
    
    }
    

    示例是一个带边框的圆形按钮。

    【讨论】:

    • 我担心你是对的。我已经测试了将故事板中的其他控件连接到具有相同结果的组件。现场设计师无法与任何外部渠道合作。
    【解决方案2】:

    不幸的是,IBDesignable 组件的周围环境都不能影响组件本身。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-02-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-08
      • 2010-12-21
      • 1970-01-01
      相关资源
      最近更新 更多