¿Cuál es el valor de un UITextField cuando está vacío? Me parece que no puede obtener este derecho.

He intentado (donde `phraseBox’ es el nombre de dicho UITextField

if(phraseBox.text != @""){

y

if(phraseBox.text != nil){

Lo que me estoy perdiendo?

  • [phraseBox hasText]
InformationsquelleAutor Moshe | 2010-06-08

7 Comentarios

  1. 21
    //Check to see if it's blank
    if([phraseBox.text isEqualToString:@""]) {
      //There's no text in the box.
    }
    
    //Check to see if it's NOT blank
    if(![phraseBox.text isEqualToString:@""]) {
      //There's text in the box.
    }
    • Tengo que esperar 15 minutos para aceptar de acuerdo con LO de las reglas. Tengo 13 min más para probar esto, jeje …
    • Gracias por la edición. Me di cuenta de que parte, con el !.
    • Mantener siempre simple 🙂
    • Lo que si el usuario entra en un montón de espacios?
  2. 13

    encuentra presente en las discusiones de apple cuando se busca lo mismo,el pensamiento enfermo a publicar aquí también.
    compruebe la longitud de la cadena :

    NSString *value = textField.text;
    if([value length] == 0) {
    
    }

    o, opcionalmente, de recorte de espacios en blanco antes de la validación,de manera que el usuario no introduzca espacios en su lugar.funciona bien para los nombres de usuario.

    NSString *value = [textField.text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
    
    if([value length] == 0) {
    //Alert the user they forgot something
    }
    • Este la solución de Apple código de ejemplo también. Gracias
  3. 1

    Intentar siguiente código

    textField.el texto es una cadena de valor, de modo que vamos a comprobar como esta

    if([txtPhraseBox.text isEqualToString:@""])
    
    {
    
    //There's no text in the box.
    
    }
    
    else
    
    {
    
    NSLog(@"Text Field Text == : %@ ",txtPhraseBox.text);
    
    }
  4. 1
    -(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
    
      NSString *fullText = [textField.text stringByAppendingString:string];      
      if ((range.location == 0) && [self isABackSpace:string]) {
        //the textFiled will be empty
      }
      return YES;
    }
    
    -(BOOL)isABackSpace:(NSString*)string {
      NSString* check [email protected]"Check";
      check = [check stringByAppendingString:string];
      if ([check isEqualToString:@"Check"]) {
        return YES;
      }
      return NO;
    }
  5. 0

    Uso para el campo de texto de validación:

    -(BOOL)validation{
     if ([emailtextfield.text length] <= 0) {
      [UIAlertView showAlertViewWithTitle:AlertTitle message:AlertWhenemailblank];
      return NO; }  
     return YES;}
  6. 0

    De hecho, me encontré con ligeros problemas utilizando Rafael enfoque con varios campos de texto. He aquí lo que encontré:

    if ((usernameTextField.text.length > 0) && (passwordTextField.text.length > 0)) {
        loginButton.enabled = YES;
    } else {
        loginButton.enabled = NO;
    }
  7. 0

    De validación en contra de vacío UITextfield. si usted no desea que UITextField no debe aceptar en blanco los espacios en blanco. El uso de este fragmento de código:

    - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
    
        NSString *resultingString = [textField.text stringByReplacingCharactersInRange: range withString: string];
        NSCharacterSet *whitespaceSet = [NSCharacterSet whitespaceCharacterSet];
        if  ([resultingString rangeOfCharacterFromSet:whitespaceSet].location == NSNotFound)      {
            return YES;
        }  else  {
            return NO;
        }
    }

Dejar respuesta

Please enter your comment!
Please enter your name here