【问题标题】:UITextField keyboard IssueUITextField 键盘问题
【发布时间】:2010-11-17 11:40:57
【问题描述】:

我有这样一个问题:我的UITableViewCell 中有一个UITextField。当我点击该文本字段时 - > 出现键盘,但是当我按下 Enter 按钮时,键盘不会消失。我的文本字段和键盘需要这样的行为:

  1. 当我按下 Enter 时,Esc - 键盘必须消失。

【问题讨论】:

    标签: iphone keyboard uitextfield keyboard-events


    【解决方案1】:
    - (BOOL)textFieldShouldReturn:(UITextField *)textField
    {
        [textField resignFirstResponder];
        return YES;
    }
    

    其中 textField 是 UITableViewCell 中的 UITextField

    【讨论】:

    • @yozhik,您是否已将委托设置为您的文本字段?检查该方法是否真正被调用
    【解决方案2】:

    试试这个

    
    [txtField setReturnKeyType:UIReturnKeyDone];
    
    txtField.enablesReturnKeyAutomatically=YES;

    【讨论】:

      【解决方案3】:

      在 textField 的委托中实现 textFieldShouldReturn: 方法并在那里调用 [textField resignFirstResponder] - 这将在按下返回键时隐藏键盘。

      我不确定这是否也适用于“Esc”,但无论如何在真实设备上都没有这样的键,所以它一定不是问题

      【讨论】:

        【解决方案4】:

        这可能是一个旧帖子,但我发现它正在寻找答案,所以很可能是其他人,所以不要因为我发帖而开枪。

        只是想添加 不要忘记在 IB 中为 UITextField 建立委托连接

        【讨论】:

          【解决方案5】:
          @interface Untitled2ViewController : UIViewController <UITextFieldDelegate>
          {
              IBOutlet UITextField *text;
          }
          
          @property (nonatomic, retain) IBOutlet UITextField *text;
          @end
          

          //m 文件

          #import "Untitled2ViewController.h"
          
          @implementation Untitled2ViewController
          @synthesize text;
          
          - (BOOL)textFieldShouldReturn:(UITextField *)textField
          {
              [textField resignFirstResponder];
              return YES;
          }
          

          在 xib 文件中我设置:返回键:完成,自动返回键。我也试过没有它,仍然没有反应。键盘不会隐藏。

          【讨论】:

          • 您应该编辑您的问题并将详细信息放在那里 - 答案不是正确的地方 + 很容易错过您的帖子。仍然是邮件问题 - 您是否将您的控制器设置为文本的委托(在 IB 中或通过代码)并且 textFieldShouldReturn 是否被调用(在此处放置断点或日志消息以检查...)?
          【解决方案6】:

          编写这段代码来创建 UITextLabel

              UITextField *username = [[UITextField alloc]initWithFrame:CGRectMake(10.0f, 10.0f, 110.0f, 30.0f)]
              [username setReturnKeyType:UIReturnKeyNext];
              [username setDelegate:self];
              [self.view addSubview:username];
          

          现在辞职写这段代码。

          -(void)resignKeyboard
          {
              if([username isEditing])
              {
                  [username resignFirstResponder];
              }
          }
          

          我希望它对你有用。

          【讨论】:

            【解决方案7】:

            试试这个

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

            或者这是视图中的任何地方

            - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
                [self.view endEditing:YES];
            }
            

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2015-11-16
              • 2011-09-20
              • 1970-01-01
              • 1970-01-01
              • 2012-07-04
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多