gpt4 book ai didi

ios - 在两个 View 之间进行通信的更好方法是什么?

转载 作者:行者123 更新时间:2023-11-29 02:10:18 24 4
gpt4 key购买 nike

我们的一个项目需要一个简单的自定义键盘控件,该控件将在项目的许多 View 以及可能的 future 项目中重复使用。

提出了一个问题:

如果我们知道键盘控件的唯一目的是为用户提供一种输入数据来修改单个 UITextField 或 UILabel 的方法,那么它是:

a) 最好将对 UITextField 的引用传递给 CustomKeyboardView 并让该 View 处理其类内文本字段文本的修改,或者:

b) 编写一个委托(delegate)来从 CustomKeyboardView 返回值,并使父 viewController 处理从键盘接收回调并设置 UITextField 的正确值,或者:

c)使用其他模式吗?

值得注意的是,将文本写入文本字段的代码比简单地传递原始字符要复杂一些,它会比较文本字段中已有的值并根据该状态传递字符。

最佳答案

如果您有两个密切相关的 View ,您需要的是一个位于它们之间的 Controller 。这很可能是一个拥有键盘的 UIViewController,并且您在创建它时提供了一个 UITextFieldUILabel

然后您的“主” View Controller 可以创建这个自定义的 subview Controller ,就像您使用 UIPopoverControllerUIAlertController 所做的那样。

这种模式使得整个包非常可重用,而无需将 Controller 逻辑注入(inject) View 。

关于ios - 在两个 View 之间进行通信的更好方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29347208/

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