在我认为是一个简单的子类中,我似乎无法弄清楚这个问题。
此错误消息是否有意义?
'super.init' cannot be called outside of an initializer
可替换地,
SKPhoto被声明为打开,以下是超类的可用内容:
// MARK: - SKPhoto
open class SKPhoto: NSObject, SKPhotoProtocol {
open var underlyingImage: UIImage!
open var photoURL: String!
open var contentMode: UIViewContentMode = .scaleAspectFill
open var shouldCachePhotoURLImage: Bool = false
open var caption: String!
open var index: Int = 0
override init() {
super.init()
}
convenience init(image: UIImage) {
self.init()
underlyingImage = image
}
convenience init(url: String) {
self.init()
photoURL = url
}
convenience init(url: String, holder: UIImage?) {
self.init()
photoURL = url
underlyingImage = holder
}
我尴尬地无法解决这个问题!
答案 0 :(得分:0)
SKPhoto课程中似乎存在问题;它没有打开它的init方法,因此你不能在子类中覆盖它们;
https://github.com/suzuki-0000/SKPhotoBrowser/blob/swift3/SKPhotoBrowser/SKPhoto.swift
如果你真的想使用它,你应该分叉回购并进行适当的更改,然后可以使用它。