gpt4 book ai didi

ios - 如何将协议(protocol)类型添加为 subview

转载 作者:搜寻专家 更新时间:2023-11-01 05:52:11 24 4
gpt4 key购买 nike

所以我写了一个简单的协议(protocol):

protocol PopupMessageType{
var cancelButton: UIButton {get set}
func cancel()
}

并有一个自定义 View :

class XYZMessageView: UIView, PopupMessageType {
...
}

然后我现在有:

class PopUpViewController: UIViewController {

//code...

var messageView : CCPopupMessageView!
private func setupUI(){
view.addSubview(messageView)

}

}

但是我想做的是:

class PopUpViewController: UIViewController {

//code...

var messageView : PopupMessageType!
private func setupUI(){
view.addSubview(messageView) // ERROR

}

}

我得到的错误:

Cannot convert value of type 'PopupMessageType!' to expected argument type 'UIView'

编辑:我正在使用 Swift 2.3!

最佳答案

将属性 messageView 的类型更改为 (UIView & PopupMessageType)!

我是说

class PopUpViewController: UIViewController {

//code...

var messageView : (UIView & PopupMessageType)!
private func setupUI(){
view.addSubview(messageView) // ERROR

}

}

关于ios - 如何将协议(protocol)类型添加为 subview ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46653085/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com