gpt4 book ai didi

ios - 我不明白委托(delegate)们在说什么

转载 作者:行者123 更新时间:2023-11-28 09:47:39 27 4
gpt4 key购买 nike

我无法理解代理在 swift 中的用途

我试图在任何可能的网站上搜索委托(delegate)是什么以及它的用途,但我无法完全理解它们的含义。

f.e.在这段代码中

extension SignUpViewController : UIImagePickerControllerDelegate, UINavigationControllerDelegate {
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {

}
}

分配给 ViewController 的委托(delegate)应该做什么?我怎样才能理解如何使用它们?

最佳答案

我喜欢打个比方:

将有一个“speaker”和一个“listener”。

UIImagePickerController 已配置为在事件发生时“说话”,因此当发生类似 didFinishPickingMediaWithInfo 的事情时,它“说话”。

在您的场景中,UIViewController 应该是“listener”,它配置为:

picker.delegate = self,假设 UIViewController 实现了 UIImagePickerControllerDelegate


换句话说,当 pickerspeak”时,让 UIViewController 成为“listener”。

选择器“”的所有内容都将通过 UIImagePickerControllerDelegate 被“”的人“”强>”。


注意:这是非常肤浅和抽象的,当然它远不止于此,但我正在考虑 OP 的情况。

关于ios - 我不明白委托(delegate)们在说什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56719604/

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