Etiquetas en Xamarin.iOS

El control UILabel se usa para mostrar texto de solo lectura y de varias líneas.

Implementación de una etiqueta

Para crear una nueva etiqueta, se crea una instancia de un UILabel:

UILabel label = new UILabel();

Etiquetas y guiones gráficos

También puede agregar una etiqueta a la interfaz de usuario al usar el Diseñador de iOS. Busque Etiqueta en el Cuadro de herramientas y arrástrelo a la vista:

Label in toolbox

Las siguientes propiedades se pueden ajustar en el panel de propiedades:

Label property panel

  • Contexto de texto: Sin formato o con atributos. Texto sin formato permite establecer los atributos de formato en toda la cadena. Los textos con atributos permiten establecer el formato en caracteres o palabras diferentes de la cadena.
  • Color, Fuente, Alineación: Atributos de formato que se pueden aplicar a la etiqueta.
  • Líneas: Establece el número de líneas que puede abarcar la etiqueta. Establézcalo en 0 para permitir que la etiqueta use tantas líneas como sea necesario.
  • Comportamiento: Se puede establecer en Habilitado o Resaltado. Habilitado se establece de forma predeterminada, el texto deshabilitado se mostrará en un color gris más claro. El resaltado está deshabilitado de forma predeterminada y permite volver a dibujar la etiqueta con un estado resaltado cuando un usuario lo selecciona.
  • Baselane y salto de línea :
    • Basline determina cómo se colocará el texto si los tamaños de fuente son diferentes de los especificados.
    • Los saltos de línea determinan cómo se ajustará o truncará una cadena si es más larga que una sola línea.
  • Autoshrink: Determina cómo se minimizará el tamaño de fuente dentro de una etiqueta, si es necesario.
  • Resaltado, Sombra, Desplazamiento: Permite establecer el color de iluminación alta y Sombra, y el desplazamiento de la sombra.

Truncamiento y ajuste

Para obtener información sobre el uso de los saltos de línea en iOS, consulte la receta Truncar y Encapsular texto.

Aplicar formato a texto y etiqueta

Para dar formato a la cadena que se usa en una etiqueta, puede establecer atributos de formato en toda la cadena o puede usar cadenas con atributos. En los ejemplos siguientes se muestra cómo implementar estos:

label = new UILabel(){
                Text = "Hello, this is a string",
                Font = UIFont.FromName("Papyrus", 20f),
                TextColor = UIColor.Magenta,
                TextAlignment = UITextAlignment.Center
            };
label.AttributedText = new NSAttributedString(
                "This is some formatted text",
                font: UIFont.FromName("GillSans", 16.0f),
                foregroundColor: UIColor.Blue,
                backgroundColor: UIColor.White
            );

Para obtener más información sobre el estilo de texto mediante NSAttributedString consulte la receta Texto de estilo.

De forma predeterminada, las etiquetas tienen el Enabled establecido en true, pero es posible establecerlo en deshabilitado para dar al usuario una sugerencia de que un control determinado está deshabilitado:

label.Enabled = false;

Esto establece la etiqueta en un color gris claro, como se muestra en la siguiente imagen de ejemplo de la pantalla Restricciones en iOS:

Disabled button in iOS

También puede establecer los colores de texto Resaltado y Sombra en el texto de la etiqueta para efectos adicionales:

label.Highlighted = true;
label.HighlightedTextColor = UIColor.Cyan;

label.ShadowColor = UIColor.Black;
label.ShadowOffset = new CoreGraphics.CGSize(1.0f, 1.0f);

Que muestra el texto de la siguiente manera:

Highlight and Shadow set on text

Para obtener más información sobre cómo cambiar la fuente de una UILabel, consulte la receta Cambiar la fuente.