2015-11-24 4 views
1

я добавил текстовые поля динамически Scrollview, как показано ниже: -Установить максимальную длину, чтобы динамически добавлять текстовые поля

for(int i = 0; i< responseBillPay.billerDetails.payeeFormat.count; i++) { 
    UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(10, y, width, height)]; 
    textField.borderStyle = UITextBorderStyleRoundedRect; 

    textField.placeholder = [responseBillPay.billerDetails.payeeFormat[i] name]; 
    textField.delegate = self; 
    [innerScroll addSubview:textField]; 
} 

Теперь я хочу, чтобы установить максимальную длину для каждого textfield.How я мог это сделать? я получил ответ WebService, как: -

payeeFormat =   
      (

     { 

      displayFlag = false; 
      length = 4; 
      name = "BU(Billing Unit)"; 
      validation = "Please enter 4 digits BU(Billing Unit)"; 
     }, 
        { 
      displayFlag = false; 
      length = 2; 
      name = "PC(Processing Cycle)"; 
      validation = "Please enter only numbers in PC(Processing Cycle),PC(Processing Cycle) should be maximum 2 digits,PC(Processing Cycle) should be minimum 1 digit"; 
     }, 
        { 
      displayFlag = true; 
      length = 12; 
      name = "Consumer No."; 
      validation = "Consumer No. should be maximum 12 digits,Consumer No. should be minimum"; 
     } 
    ); 
+0

См. Https://stackoverflow.com/questions/433337/set-the-maximum-character-length-of-a-uitextfield?rq=1. – Daniel

ответ

0

Вы можете сделать это динамичный немного по вам. как диапазон текста или шаблонный текст и т.д.

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{ 
    NSString * searchStr = [textField.text stringByReplacingCharactersInRange:range withString:string]; 

    NSString *placeHOlder = textField.placeholder; 

    if ([placeHOlder isEqualToString:@"BU(Billing Unit)"]) { 
     if ([searchStr length] <= 4) { 
      return YES; 
     } 
     else 
      return NO; 
    } 
    else 
     return NO; 
} 

второй путь

Вы можете хранить все текстовое поле в массиве, и вы можете проверить, что текстовое поле в указанном выше способе делегата. Если он равен, то поставьте свой текстовый диапазон и верните YES в противном случае возврат NO.

+0

ответ зависит от запроса, поэтому я не могу скомпоновать текстовое поле, так как в некоторых случаях он может быть 1 текстовым полем в других 3, как есть. – poojathorat

+0

В этом вы можете использовать мой второй способ, который будет работать отлично –

0

Вы также можете подклассифицировать UITextField и добавить атрибуты, о которых вы заботитесь непосредственно в подкласс, как свойства в соответствии с вашим ответом получателя.

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

  • Нет связанных вопросов^_^