【问题标题】:Difference between textfieldshouldendediting and textfieldDidendediting in iPhoneiPhone中textfieldshouldendediting和textfieldDidendediting的区别
【发布时间】:2012-08-29 01:54:04
【问题描述】:

textFieldShouldendEditingtextfieldDidEndEditing有什么区别,分别应该在什么时候使用?

【问题讨论】:

标签: iphone ios ios5 uitextfield


【解决方案1】:

textFieldShouldEndEditing

询问委托人是否应该在指定的文本字段中停止编辑。

- (BOOL)textFieldShouldEndEditing:(UITextField *)textField

讨论 当文本字段被要求退出第一个时调用此方法 响应者状态。当您的应用程序询问文本时,可能会发生这种情况 退出焦点或用户尝试更改编辑的字段 专注于另一个控件。然而,在焦点实际改变之前, 文本字段调用此方法让您的委托有机会 决定是否应该。

通常,您会从此方法返回 YES 以允许文本 字段以辞去第一响应者的身份。你可能会返回 NO, 但是,如果您的委托人在 文本域。通过返回 NO,您可以阻止用户切换 到另一个控件,直到文本字段包含有效值。

textFieldDidEndEditing

告诉代理指定文本字段的编辑已停止。

- (void)textFieldDidEndEditing:(UITextField *)textField

讨论 在文本字段放弃其第一响应者状态后调用此方法。您可以使用此方法更新委托的状态信息。例如,您可以使用此方法隐藏应仅在编辑时可见的叠加视图。 委托执行此方法是可选的。

site:apple.com textFieldShouldendEditing

textFieldShouldEndEditing

textFieldDidEndEditing

【讨论】:

    【解决方案2】:

    textFieldShouldendEditing: 你应该返回BOOL 值 YES 将辞去响应者,NO 将留在原地

    textfieldDidEndEditing 将在文本字段处于编辑模式后触发。

    根据Apple

    当文本字段被要求放弃第一响应者状态时调用此方法。

    在文本字段退出其第一响应者状态后调用此方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-12-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多