本文介绍了IBDesignable构建失败的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我已经创建了IBDesignable
和IBInspectable
自定义类,以提供视图的阴影和拐角半径
I have Created IBDesignable
and IBInspectable
custom class to give shadow and corner radius for view
但是当我将Designable
类分配给view
时,我得到了Designable Build Failed
But When I assign Designable
class to view
, I get Designable Build Failed
这是我的代码
import Foundation
import UIKit
@IBDesignable
class DesignableView: UIView {
}
@IBDesignable
class DesignableButton: UIButton {
}
@IBDesignable
class DesignableLabel: UILabel {
}
@IBDesignable
class DesignableTableView: UITableView {
}
extension UIView {
@IBInspectable
var cornerRadius: CGFloat {
get {
return layer.cornerRadius
}
set {
layer.cornerRadius = newValue
}
}
@IBInspectable
var borderWidth: CGFloat {
get {
return layer.borderWidth
}
set {
layer.borderWidth = newValue
}
}
@IBInspectable
var borderColor: UIColor? {
get {
if let color = layer.borderColor {
return UIColor(cgColor: color)
}
return nil
}
set {
if let color = newValue {
layer.borderColor = color.cgColor
} else {
layer.borderColor = nil
}
}
}
@IBInspectable
var shadowRadius: CGFloat {
get {
return layer.shadowRadius
}
set {
layer.shadowRadius = newValue
}
}
@IBInspectable
var shadowOpacity: Float {
get {
return layer.shadowOpacity
}
set {
layer.shadowOpacity = newValue
}
}
@IBInspectable
var shadowOffset: CGSize {
get {
return layer.shadowOffset
}
set {
layer.shadowOffset = newValue
}
}
@IBInspectable
var shadowColor: UIColor? {
get {
if let color = layer.shadowColor {
return UIColor(cgColor: color)
}
return nil
}
set {
if let color = newValue {
layer.shadowColor = color.cgColor
} else {
layer.shadowColor = nil
}
}
}
}
这就是我得到的
推荐答案
失败了,因为IBInspectable
的变量用于其他人的IBDesignable
类
It was failing because the variables of IBInspectable
are used in someone else's IBDesignable
class
以下步骤解决了该问题:
The following steps resolved the issue:
- 重命名课程
- 清理项目.
- 选择情节提要,转到编辑器"菜单,然后执行刷新所有视图",或者选择自动刷新"视图;等待构建完成.
这篇关于IBDesignable构建失败的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!