ios - IBDesignable 类未在 xcode 中更新

标签 ios swift xcode ibdesignable

我创建了一个自定义的 IBDesignable UISegmentedControl 类。 该类没有构建错误但有警告,它不会在 Xcode 内部更新。有警告,见下面的截图。

@IBDesignable open class UISegmentedControlBorderless : UISegmentedControl {

    @IBInspectable var borderColor:UIColor = UIColor.white {
        didSet {
            setupUI()
        }
    }
    @IBInspectable var textColor:UIColor = UIColor.white {
        didSet {
            setupUI()
        }
    }
    @IBInspectable var textSelectedColor:UIColor = UIColor.red {
        didSet {
            setupUI()
        }
    }

    required public init?(coder aDecoder:NSCoder) {
        super.init(coder:aDecoder)
        setupUI()
    }

    override init(frame:CGRect) {
        super.init(frame:frame)
        setupUI()
    }

    override open func awakeFromNib() {
        super.awakeFromNib()
        setupUI()
    }

    override open func prepareForInterfaceBuilder() {
        super.prepareForInterfaceBuilder()

        setupUI()
    }

    fileprivate func setupUI() {
        tintColor = borderColor
        let attributes = [NSAttributedStringKey.foregroundColor: textColor]
        let attributes2 = [NSAttributedStringKey.foregroundColor: textSelectedColor]

        setTitleTextAttributes(attributes, for: .normal)
        setTitleTextAttributes(attributes2, for: .selected)

    }  
}

Warnings:

xcode screenshot

取消勾选继承模块

enter image description here

最佳答案

根据屏幕截图中的第一个警告,Xcode 未找到您的 UISegementedControl 子类。这通常是由于未在定义类的位置设置正确的模块引起的,并且由于您的子类被定义为 open,因此您很可能将它放在目标应用程序之外的框架或模块中。

因此,请确保您在 Storyboard 上为分段控件设置自定义类的位置,您还为定义子类的位置选择了正确的模块,并且您可能想要取消选中“从目标继承模块”以便执行所以:

Custom Class Tab

关于ios - IBDesignable 类未在 xcode 中更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54318255/

相关文章:

ios - NsNumberFormatter 没有给出正确的结果

objective-c - 递归不崩溃

ios - Swift instagram 克隆 : loading followed user post

swift - 计算直线和 x 轴之间的角度

ios - 无法在我的 UICollectionView 的 cellForItemAtIndexPath 中获得正确的类型

iphone - Xcode如何决定先加载哪个xib?我该如何改变它?

ios - UIView 图层动画后显示不正确

swift - Swift Closure 的奇怪行为

ios - 在 Swift/IOS 中获取实际 View 大小

ios - 将 imageView、图像和背景图像保存到相机胶卷?