一个实时渲染的圆角视图
这是 iOS 开发中的一个常见要求,它总是必须纯粹在代码中完成(或使用图像 - 哎呀!)。现在,在 Interface Builder 中预览他的那种东西非常容易,没有理由不使用它。
这是代码: -
import UIKit
@IBDesignable
class MyRoundedView: UIView {
@IBInspectable var radius: CGFloat = 8 {
didSet {
self.layer.cornerRadius = radius
}
}
override func awakeFromNib() {
self.layer.cornerRadius = self.radius
self.layer.masksToBounds = true
}
}
要使用此类,请将其添加到项目中,然后在 IB 中打开故事板并创建一个体面大小的普通 UIView。给它一个背景颜色,以便你可以看到它,然后导航到右侧 Utilities 面板中的 Identity Inspector,并将下拉列表中的类类型更改为 MyRoundedView
。
http://i.stack.imgur.com/MXBYU.jpg
执行此操作时,你应该会在类和模块下面看到第三个标签,上面写着 Designables
,并且在更改为最新之前应该说更新片刻。这意味着 Xcode 已成功重新编译 MyRoundedView
的代码。
现在你可以打开属性检查器,你应该看到(可能在短暂停顿后)窗格顶部的新部分,标题为我的圆角视图,标题为 Radius
的新属性值为 8(因为那样)是我们在代码中设置的初始值)。这已出现在 Attributes Inspector 中,因为我们将其标记为 @IBInspectable
。
你现在可以将其更改为另一个数字,你应该实时看到圆角视图的圆角半径更新!