问题子类化 UIVisualEffect
Issues subclassing UIVisualEffect
我正在尝试对 UIVisualEffect 进行子类化,但在实现正确的初始化方法时遇到了问题。到目前为止我有这个:
import UIKit
class BlurView: UIVisualEffect {
init(effect: UIVisualEffect?) {
super.init(effect)
print("Init 1 called")
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
print("Init 2 called")
}
}
我收到错误:"Missing the argument coder in the call"。我也试过:
import UIKit
class BlurView: UIVisualEffect {
init(effect: UIVisualEffect?) {
super.init()
print("Init 1 called")
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
print("Init 2 called")
}
}
这是在抱怨我没有实现 init 方法。我尝试这样做但仍然无法正常工作。关于如何实施这些方法的任何想法?谢谢!
有一个错字,你想继承 UIVisualEffectView
,而不是 UIVisualEffect
。
它们不同 UIVisualEffectView
继承自 UIView
并应用您传入的 UIVisualEffect
。UIVisualEffect
只是效果。
class BlurView: UIVisualEffectView {
override init(effect: UIVisualEffect?) {
super.init(effect: effect)
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
}
我正在尝试对 UIVisualEffect 进行子类化,但在实现正确的初始化方法时遇到了问题。到目前为止我有这个:
import UIKit
class BlurView: UIVisualEffect {
init(effect: UIVisualEffect?) {
super.init(effect)
print("Init 1 called")
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
print("Init 2 called")
}
}
我收到错误:"Missing the argument coder in the call"。我也试过:
import UIKit
class BlurView: UIVisualEffect {
init(effect: UIVisualEffect?) {
super.init()
print("Init 1 called")
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
print("Init 2 called")
}
}
这是在抱怨我没有实现 init 方法。我尝试这样做但仍然无法正常工作。关于如何实施这些方法的任何想法?谢谢!
有一个错字,你想继承 UIVisualEffectView
,而不是 UIVisualEffect
。
它们不同 UIVisualEffectView
继承自 UIView
并应用您传入的 UIVisualEffect
。UIVisualEffect
只是效果。
class BlurView: UIVisualEffectView {
override init(effect: UIVisualEffect?) {
super.init(effect: effect)
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
}