Pregunta

Tengo un UITextView y 2 UITextField una trampa. UITextView renuncia primer estado que responde cuando una parte vacía de la pantalla se toca, lo mismo para el 2 UITextField, además de estos 2, la tecla de retorno también dimite primer estado que responde. Los 3 son declarados en la interfaz.

Me gustaría obtener el contenido de todas ellas a NSString individual y / o aprender cómo entrar directamente en algo como:

NSString *urlstr = [[NSString alloc] initWithFormat:@"http://server.com/file.php?var1=%@&var2=%@&var3=%@", *content of UITextView*, *content of UITextField*, *content of UITextField*];

Esta es una pregunta muy básica, lo sé, pero yo soy más o menos un novato. Si me entero de cómo hacer esto probablemente seré capaz de recoger de allí.

aplausos

(editado)

¿Fue útil?

Solución

UITextField y UITextView ambos tienen una propiedad text que se puede utilizar para recuperar los valores de cadena. Por ejemplo,

NSString *string = [NSString stringWithFormat:@"%@, %@", textField.text, textView.text];

Tenga en cuenta que probablemente querrá examinar las cuerdas para asegurarse de que no están vacías o contienen caracteres no válidos antes de ponerlos en una dirección URL.

Otros consejos

La respuesta aceptada es bueno, sólo quería añadir lo siguiente para una mirada expandida en el acaparamiento de texto en iOS.

Ver el aspecto textInRange: del código de abajo que ideé para utilizar una función para determinar el texto si se trata de un UITextField, UITextView o cualquier otra clase que cumple con el protocolo UITextInput.

//handle text container object length whether it's a UITextField, UITextView et al
NSUInteger LengthOfStringInTextInput(NSObject<UITextInput> *textContainer)
{
    UITextPosition *beginningOfDocument = [textContainer beginningOfDocument];
    UITextPosition *endOfDocument =       [textContainer endOfDocument];
    UITextRange    *fullTextRange =       [textContainer textRangeFromPosition:beginningOfDocument 
                                                                    toPosition:endOfDocument];
    return [textContainer textInRange:fullTextRange].length;
}

Al cambiar el tipo de retorno a NSString y la eliminación de .length usted podría tener la funcionalidad de la propiedad de texto en cualquier clase.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top