如果未为 UITextField 对象设置委托,那么最初由谁执行这些可选功能?

If the delegate isn't set for a UITextField object, then who is carrying out those optional functions initially?

我正在学习一个教程,其中重点是教授委托和回调。在本教程中,我们使用了一个 UITextField 对象,现在我们通过实现 UITextFieldDelegate 协议来阐述这个 UITextField 对象。我们正在使用自定义 viewController 并将其设置为与委托相同的 viewController。

我的问题是,在我们决定将 ViewController 设置为代表之前,谁是代表? UITextField 是它自己的委托并自行执行这些可选方法吗?如果是这样,我们实现 UITextFieldDelegate 的最终目标是获得更多自定义或控制 UITextField 的工作方式吗?

提前谢谢你,如果我过于分析,我深表歉意。

通常,委托方法的文档会告诉您期望的默认值。例如,optional func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool 表示,"If you do not implement this method, the text field acts as if this method had returned YES."(强调我的。)

此外,您可以在分配委托之前检查委托 属性,注意它是 nil

将这些放在一起,似乎文本字段使用可选委托来替换其自身的默认非委托行为。