为什么自定义 UIRefreshControl Class 的背景颜色在 Swift 中没有改变?
Why Custom UIRefreshControl Class's Background Color not changing in Swift?
我创建了如下自定义 UIRefreshControl:
class CustRefreshCont: UIRefreshControl {
override func draw(_ rect: CGRect) {
// Drawing code
let blueColor: UIColor = UIColor.blue
let lightGrayColor: UIColor = UIColor.lightGray
self.tintColor = blueColor
self.backgroundColor = lightGrayColor
self.attributedTitle = NSAttributedString(string: "Updating data", attributes: [NSAttributedStringKey.foregroundColor : self.tintColor, NSAttributedStringKey.backgroundColor : self.backgroundColor!])
}
}
我从 UIViewController 分配 UIRefreshControl 的方式复制如下:
let refreshControl = CustRefreshCont()
正在显示文本和 ActivityIndicator 自定义项,但背景颜色显示为黑色。
知道我的代码有什么问题吗?
将您的配置代码移至初始化程序。我不认为 draw
方法是正确的地方。
override init() {
super.init()
backgroundColor = .red
tintColor = .blue
}
我创建了如下自定义 UIRefreshControl:
class CustRefreshCont: UIRefreshControl {
override func draw(_ rect: CGRect) {
// Drawing code
let blueColor: UIColor = UIColor.blue
let lightGrayColor: UIColor = UIColor.lightGray
self.tintColor = blueColor
self.backgroundColor = lightGrayColor
self.attributedTitle = NSAttributedString(string: "Updating data", attributes: [NSAttributedStringKey.foregroundColor : self.tintColor, NSAttributedStringKey.backgroundColor : self.backgroundColor!])
}
}
我从 UIViewController 分配 UIRefreshControl 的方式复制如下:
let refreshControl = CustRefreshCont()
正在显示文本和 ActivityIndicator 自定义项,但背景颜色显示为黑色。
知道我的代码有什么问题吗?
将您的配置代码移至初始化程序。我不认为 draw
方法是正确的地方。
override init() {
super.init()
backgroundColor = .red
tintColor = .blue
}