当我点击返回时,UITexFiled总是清晰

时间:2016-01-25 16:49:48

标签: objective-c

我在我的视图上以编程方式添加了一个UITexfield。当我使用键盘并点击返回按钮时,texfield会自动清除,我不想这样做。

这是我的代码;

UITextField * eventListSeractTextField = [[UITextField   alloc]initWithFrame:CGRectMake(headerView.frame.size.width-112,4, 110, 20)];
    eventListSeractTextField.backgroundColor=[UIColor whiteColor];
    eventListSeractTextField.layer.cornerRadius=3.0f;

    eventListSeractTextField.tag=101;
    eventListSeractTextField.delegate=self;
        eventListSeractTextField.autocapitalizationType=UITextAutocapitalizationTypeNone;
        eventListSeractTextField.autocorrectionType=UITextAutocorrectionTypeNo;
    eventListSeractTextField.spellCheckingType=UITextSpellCheckingTypeNo;
    eventListSeractTextField.clearButtonMode = UITextFieldViewModeAlways;
    eventListSeractTextField.returnKeyType = UIReturnKeySearch;
    eventListSeractTextField.placeholder=@"Search";
    eventListSeractTextField.clearsOnBeginEditing=false;
    [eventListSeractTextField setClearsOnBeginEditing:false];

- (BOOL)textFieldShouldReturn:(UITextField *)textField{
switch (textField.tag) {

    case 101:
        [textField resignFirstResponder];
        return false;
        break;
    default:
       return YES;
}
return YES;

}

我该如何避免这种情况?

1 个答案:

答案 0 :(得分:0)

我的猜测是,每次在代码中完成后都会重新创建textview。检查你在哪里调用这行代码:

UITextField * eventListSeractTextField = [[UITextField   alloc]initWithFrame:CGRectMake(headerView.frame.size.width-112,4, 110, 20)];

您应该只需要在viewDidLoad中创建一次textView。如果您熟悉故事板,那么更简单的方法是在故事板中进行操作