【问题标题】:Dismiss keyboard when UITextField created programmatically以编程方式创建 UITextField 时关闭键盘
【发布时间】:2012-02-27 12:39:32
【问题描述】:

我以编程方式创建了一个 UITextField。我想在输入文本后关闭键盘。我该怎么做?

【问题讨论】:

    标签: objective-c ios uitextfield


    【解决方案1】:
    [yourfield resignFirstResponder];
    

    【讨论】:

    • 我编写了相同的代码来关闭键盘,但它不起作用。这是我的代码 sn-p
    • UITextField *userNameTextfield=[[UITextField alloc]initWithFrame:CGRectMake(160,170, 140.0, 18.0)];[userNameTextfield setAdjustsFontSizeToFitWidth:YES]; [userNameTextfield resignFirstResponder];
    • 当你想隐藏键盘时..在那个地方你应该有 resignFirstResponder 方法..而不是你初始化它的地方..
    • - (void)textFieldDidEndEditing:(UITextField *)textField { [textField resignFirstResponder]; } [self textFieldDidEndEditing:userNameTextfield];
    • - (void)textFieldDidEndEditing:(UITextField *)textField { [textField resignFirstResponder]; } [self textFieldDidEndEditing:userNameTextfield];我这样写仍然无法正常工作。我浏览了苹果文档,但我仍然没有得到任何正确的线索
    【解决方案2】:

    学习UITextField类参考,很简单,你只需要花点时间学习理论。

    【讨论】:

    • 我浏览了 UITextFiled Reference class 。我在这里得到的只是 [mytextfield resignFirstResponder];但我不明白 [mytextfiled resignFirstResponder] 应该在何时何地调用。
    【解决方案3】:

    如果你动态添加了texfield,试试这个

    [texfield addTarget:self action:@selector(resignFirstResponder)forControlEvents:UIControlEventEditingDidEndOnExit];
    

    【讨论】:

      猜你喜欢
      • 2011-12-16
      • 2010-09-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多