11

在尝试为我自己的项目修改在 IBinspectable属性上找到的 Apple 教程时,我遇到了一个主要障碍。

我定义了一个简单的按钮子类:

import UIKit

@IBDesignable public class SocialMediaLoginButton: UIButton {

  private var _loginType: SocialMediaLoginType = .facebook

  @IBInspectable public var loginType: SocialMediaLoginType 
              = SocialMediaLoginType.facebook {

      didSet {
          self._loginType = loginType
      }
  }
}

然后在我的情节提要中添加了一个 UIButton,然后我选择了 CustomClass 作为上述类型。当我切换到属性检查器时,我无法调整该属性。我不知道发生了什么:

属性检查器

我查找了其他问题,但是在应用程序开发者论坛上要么非常过时,要么没有答案。

我努力了:

  1. 手动刷新视图
  2. 关闭和重新打开 xcode
  3. 删除并重新添加控件
  4. 添加不同的控件,如 UIView 并尝试相同的事情

这些都没有奏效。我不知道如何解决这个问题。我正在使用 Xcode 8.3.3

4

2 回答 2

9

Interface Builder 支持检查基本类型(及其对应的选项),包括:布尔值、数字、字符串以及 CGRect、CGSize、CGPoint 和 UIColor。

我认为您的类型不适用于界面生成器。

于 2018-03-19T13:41:45.337 回答
8

要添加到 Wilson 的答案中,您必须明确指定要显示的类型(Int、String 等)。

于 2019-11-27T00:04:21.453 回答