2010-02-02 11 views
12

¿Existe una forma obvia de crear un cuadro de entrada de texto con bordes redondeados?Entrada de texto del iPhone con bordes redondeados

No estoy hablando de establecer un borderStyle de UITextField en UITextBorderStyleRoundedRect. Eso solo me da esquinas redondeadas.

Estoy hablando del campo de texto de estilo utilizado como entrada en la aplicación de SMS (antes de presionar enviar), o UISearchBar. También lo he visto utilizado en aplicaciones de terceros (por ejemplo, el cuadro de entrada de comentarios en la aplicación de Facebook).

¿Es esto posible usando el estándar Cocoa Touch? ¿O tengo que llevar mis propias imágenes de fondo a la mesa?

Respuesta

20

También puede establecer el radio de esquina en el campo de texto, que podría darle el control suficiente para conseguir el aspecto deseado:

textField.layer.cornerRadius = 10; 

Asegúrese de incluir #import <QuartzCore/QuartzCore.h> para acceder a este.

(la respuesta anterior es probablemente una respuesta mejor, lo que podría ser más fácil)

+0

Esto es tan bueno. Pero solo pude cambiar la esquina de no UITextField sino UITextView. ¿Es aplicable a UITextField? – KatokichiSoft

+0

Sí, funciona en todo lo que se deriva de UIView. Cuando dices que no puedes hacer que funcione, ¿qué quieres decir? No compila, o no tiene un efecto visible? Si es el segundo, ¿está configurando borderStyle en UITextField? Eso logró anularlo cuando lo hice. – justin

+0

He encontrado que esto es altamente computacional con 15 campos de texto grandes, todos en celdas, cada uno con esquinas redondeadas, mientras se desplaza continuamente. – oberbaum

2

Creo que la manera más fácil de hacerlo es utilizar un fondo personalizado. Here es una descripción completa de API de la clase UITextField.

5

para la introducción de texto iPhone con bordes redondeados,

  1. incluyen - #import <QuartzCore/QuartzCore.h> acceder a este

  2. textField.layer.cornerRadius = 10;

thi s es la mejor y más simple forma de redondear el borde del UITextField.

Cuestiones relacionadas