代码之家  ›  专栏  ›  技术社区  ›  yozhik

uitextfield键盘问题

  •  0
  • yozhik  · 技术社区  · 15 年前

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

    1. 当我按下 进入 , ESC -键盘必须消失。
    7 回复  |  直到 11 年前
        1
  •  2
  •   DarkDust    15 年前
    - (BOOL)textFieldShouldReturn:(UITextField *)textField
    {
        [textField resignFirstResponder];
        return YES;
    }
    

    其中textfield是uiTableViewCell中的uitextfield

        2
  •  2
  •   SNR    15 年前

    试试这个

    
    [txtField setReturnKeyType:UIReturnKeyDone];
    
    txtField.enablesReturnKeyAutomatically=YES;
        3
  •  1
  •   Vladimir    15 年前

    实施 textFieldShouldReturn: textfield的委托和调用中的方法 [textField resignFirstResponder] 在那里-当按下回车键时隐藏键盘。

    我不确定“esc”是否也适用,但在真正的设备上没有这样的键,所以肯定不是问题。

        4
  •  1
  •   RyanTCB    14 年前

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

    只是想补充一下 不要忘记在ib中为uitextfield建立委托连接

        5
  •  0
  •   yozhik    15 年前
    @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文件中,我设置了:返回键:完成,自动返回键。我也试过没有它,但仍然没有反应。键盘不会隐藏。

        6
  •  0
  •   Ankit Jain    13 年前

    编写此代码以创建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
  •  0
  •   karthikeyan    11 年前

    试试这个

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

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

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