【问题标题】:iPhone: How do I create a simple Done button?iPhone:如何创建一个简单的完成按钮?
【发布时间】:2010-02-01 14:06:11
【问题描述】:

新手警报!我有一个带有 4 个文本输入字段的简单计算器。当我点击某个字段时,会出现数字键盘并输入数字。到目前为止没有问题。现在,当使用模拟器进行测试时,我按下键盘上的回车键并使用 TextFieldShouldReturn 我的字段完美地执行了他们的计算,数字键盘很好地消失了。问题是,数字键盘没有“完成”键,所以如果我在工具栏上放置一个按钮,我该如何编写代码来执行 Return 键的操作?

【问题讨论】:

    标签: iphone


    【解决方案1】:

    How do you dismiss the keyboard when editing a UITextField

    我问了同样的问题。 :-)

    答案是您将 UITextField 的委托设置为您的控制器并实现此方法。

    - (BOOL)textFieldShouldReturn:(UITextField *)textField {
        [textField resignFirstResponder];
        return NO;
    }
    

    响应您的澄清

    - (void)doneButtonPressed:(id)sender {
      [_textField resignFirstResponder];
      [self performCalculations];
    }
    

    您必须将所有计算转移到 performCalculatinos 方法中,并确保您有一个指向 UITextField 的变量。

    【讨论】:

    • 我已经试过了。其实我看到你的帖子了。问题不在于键盘消失。键盘消失得很好,因为我在 .h 文件中放置了一个 Done 操作,然后在 .m 中将操作写为: - (IBAction)done:(id)sender { [textfield1 resignFirstResponder]; [textfield2 resignFirstResponder]; [textfield3 resignFirstResponder]; [textfield4 resignFirstResponder];因此,当我单击/按下工具栏上的“完成”按钮时会调用它,但我现在如何获得与按下 Return 键或在普通 iPhone 键盘上轻敲“完成”键相同的行为?
    • 我已添加到我的答案中,希望对您有所帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多