2013-11-28 2 views
0

У меня есть severl UITextfields в одном из моих приложений Viewcontroller. Он отлично работает, и я могу набирать буквы на этих текстовых полях. Но иногда курсор появляется на UITextfield, но не может набирать на нем какую-либо букву. Это происходит не всегда. Что я делаю, когда возникает эта проблема, я удаляю то, что конкретно UITextfield, и добавьте новый UITextfield. Но после повторного выполнения нескольких функций, которые также имеют ту же проблему.Не могу ввести UITextfield

В чем причина этого. И как решить эту проблему. Пожалуйста, помогите мне. Im сражается с этим с нескольких дней. Те, которые находятся в Редактируемых и Userinteractions, доступны для них.

Эти делегаты, которые я использовал

`

-(void)textFieldDidBeginEditing:(UITextField *)textField { 


[UIView beginAnimations:nil context:NULL]; 
[UIView setAnimationDelegate:self]; 
[UIView setAnimationDuration:0.5]; 
[UIView setAnimationBeginsFromCurrentState:YES]; 


if ([UIScreen mainScreen].bounds.size.height==480) { 

     if (textField.tag==7) { 

      CGPoint npoint=originalCenter; 
      npoint.y=180; 
      self.view.center=npoint; 
     } 
     else if (textField.tag==8) 
     { 
      CGPoint npoint=originalCenter; 
      npoint.y=125; 
      self.view.center=npoint; 
     } 
     else{ 
      self.view.center=originalCenter; 
     } 
} 

else{ 

    if (textField.tag==8) 
    { 
     CGPoint npoint=originalCenter; 
     npoint.y=250; 
     self.view.center=npoint; 
    } 
    else{ 
     self.view.center=originalCenter; 
    } 

} 

[UIView commitAnimations]; 




    } 

`

`

- (BOOL)textFieldShouldReturn:(UITextField *)textField 
{ 

[UIView beginAnimations:nil context:NULL]; 
[UIView setAnimationDelegate:self]; 
[UIView setAnimationDuration:0.5]; 
[UIView setAnimationBeginsFromCurrentState:YES]; 


self.view.center=originalCenter; 
[UIView commitAnimations]; 

[textField resignFirstResponder]; 

return NO; 

}

`

` - (BOOL) TextField: (UITextField *) TextField shouldChangeCharactersInRange: (NSRange) диапазоне replacementString: (NSString *) строка {

if ([textField isEqual:txtPhonenumber]) { 
    NSUInteger newLength = [textField.text length] + [string length] - range.length; 
    return (newLength > 9) ? NO : YES; 
} 

else if ([textField isEqual:txtVerification]) 
{ 
    NSUInteger newLength = [textField.text length] + [string length] - range.length; 
    return (newLength > 4) ? NO : YES; 
} 

} `

+3

Первый пут код создания UITextField .. – iPatel

+0

я только что добавили в торговых точках. Я не создал их программно – user2889249

+0

Вы реализуете какой-либо из методов делегата для UITextField? – giorashc

ответ

2

не могу сказать, что без глядя на реализацию, но это может быть связано с вашим кодом в некоторых из методов делегата TextField особенно -

  1. если вы возвращаете NO в - textFieldShouldBeginEditing: или

  2. сделал что-то в неправильном TextField: shouldChangeCharactersInRange: replacementString

+0

Я положил код: Can u plz check – user2889249

+0

Пожалуйста, post-textFieldShouldBeginEditing: и textField: shouldChangeCharactersInRange: replaceString методы. – Atul

+0

I havent Выполнено textfieldshouldbegingediting only didbeginediting Я буду обновлять символы в методе диапазона – user2889249

Смежные вопросы