【问题标题】:How to disable input pad when pressing done on iphone?在iphone上按完成时如何禁用输入板?
【发布时间】:2009-02-24 14:52:56
【问题描述】:

我想在按“完成”时禁用 iphone 上的输入板。关于如何检测按钮按下事件的任何想法?

【问题讨论】:

    标签: iphone user-input


    【解决方案1】:

    程序化方法

    要注册按钮按下事件,您可以使用编程方法:

    [button addTarget:self action:@selector(buttonPressed:) forControlEvents: UIControlEventTouchUpInside]
    

    其中 buttonPressed: 是“self”类中的一个方法:

    -(void)buttonPressed:(id)sender;
    

    当然,您可以指定指向任何对象的指针而不是“self”,只要该对象具有 buttonPressed: 方法即可。

    界面构建器

    您也可以使用界面生成器。创建一个你想要执行的方法:

    -(IBAction)buttonPressed:(id)sender;
    

    然后右键单击界面生成器中的按钮。您应该会看到一个操作列表。在“修饰”操作上,单击圆形按钮,然后将连接器拖到代表您放置 buttonPressed: 方法的类的对象上。

    禁用输入板

    我不确定你的意思。您是在谈论关闭键盘输入吗?如果是这样,您必须调用“resignFirstResponder:”方法。例如,因为您正在编辑文本字段而弹出键盘。要关闭键盘,请在文本字段上调用以下方法:

    [textField resignFirstResponder];
    

    【讨论】:

    • 键盘输入上的“完成”按钮在界面生成器中是不可见的。我可以向按钮添加操作以关闭键盘吗?
    • 有一个选项(您可以在 IB 中找到)使完成按钮在您输入文本之前不可见。您可以禁用此功能。
    • 关于如何关闭键盘的问题。你可以在你的类中实现 UITextFieldDelegate 协议。该委托具有在按下键盘的完成按钮时调用的方法。
    • 一旦您检测到按下完成按钮,您就可以使用 resignFirstResponder 关闭键盘:如答案中所述。
    猜你喜欢
    • 2020-07-13
    • 2014-09-09
    • 1970-01-01
    • 1970-01-01
    • 2014-08-25
    • 2023-03-24
    • 1970-01-01
    • 2012-12-14
    • 1970-01-01
    相关资源
    最近更新 更多