我正在尝试为子类convenience init
创建一个没有参数的UIAlertController
,但它给了我一个错误。
它给了我这个错误:
在调用self.init之前使用self来委派初始化程序
class AvatarSelectionAlert: UIAlertController {
convenience init(test: String) {
let title = NSLocalizedString("ALERT_CHOOSE_AVATAR_TITLE", comment: "")
let message = NSLocalizedString("ALERT_CHOOSE_AVATAR_MESSAGE", comment: "")
self.init(title: title, message: message, preferredStyle: .ActionSheet)
let selectPremadeAvatarAction = UIAlertAction(title: NSLocalizedString("SELECT_PREMADE_AVATAR", comment: ""), style: .Default) { Void in
}
addAction(selectPremadeAvatarAction)
let chooseFromGalleryAction = UIAlertAction(title: NSLocalizedString("CHOOSE_FROM_GALLERY", comment: ""), style: .Default) { Void in
}
addAction(chooseFromGalleryAction)
let takeNewPictureAction = UIAlertAction(title: NSLocalizedString("TAKE_NEW_PICTURE", comment: ""), style: .Default) { Void in
}
addAction(takeNewPictureAction)
let cancelAction = UIAlertAction(title: "Cancel", style: .Cancel) { Void in
}
addAction(cancelAction)
}
}
在调用另一个self.init()
之前,我还尝试过调用self.init
,但它崩溃了。
是否可以创建没有参数的convenience init
?
答案 0 :(得分:0)
答案 1 :(得分:0)
只需扩展UIAlertController。
.toList()