Aleteo – TextOverFlow

El texto puede desbordarse de los widgets como contenedores, tarjetas, etc. El widget de texto tiene una propiedad de desbordamiento para manejar el texto desbordado en Android, IOS, WEB, aplicaciones de escritorio. La propiedad de desbordamiento tiene múltiples parámetros como clip, puntos suspensivos, desvanecimiento, visible, etc. Cada uno tiene diferentes funciones para manejar el texto. Entonces, en este artículo, cubriremos todos los parámetros de TextOverFlow.

Parámetros de TextOverFlow

Puntos suspensivos : use puntos suspensivos (. . .) para indicar que el texto está desbordado.

Code: Text(
         'Wanted Text',
          overflow: TextOverflow.ellipsis,
         ),

Desvanecimiento : el texto desbordado se muestra como transparente.

Code: Text(
          'Wanted Text',
           overflow: TextOverflow.ellipsis,
          ),

Visible : renderizar texto fuera del contenedor.

Code: Text(
         'Wanted Text',
          overflow: TextOverflow.visible,
         ),

Recortar : Recorta el texto desbordado para arreglar su contenedor.

Code:  Text(
         'Wanted Text',
          overflow: TextOverflow.ellipsis,
         ),

Siguiendo la implementación a continuación:

Cree un proyecto e importe el paquete de materiales .

Dart

import 'package:flutter/material.dart';

Ahora, en la función void main() , llame al método runApp() y llame a la clase TextHome() .

Dart

void main(){
  runApp(TextHome());
}

Ahora cree una nueva clase llamada TextHome( ). Esta será una clase sin estado porque nuestra aplicación no cambia su estado en tiempo de ejecución. Y devuelve MaterialApp().

Dart

class TextHome extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp();
 }

En el cuerpo de propiedades del andamio , cree un widget de columna. Cree un widget de contenedor con la propiedad secundaria Text() . En la propiedad de desbordamiento , dé puntos suspensivos .

Dart

Widget build(BuildContext context) {
    return MaterialApp(
    home: Scaffold(
        appBar: AppBar(
          title: Text('textOverFlow Example')
          ),
        body: Column(
          children :[
             Container(
              padding: EdgeInsets.fromLTRB(20, 20, 20, 0),
              child :Text(
                 "This is example of textoverflow ecllipsis, In the end there are the dots",
               style: TextStyle(fontSize: 22),
               overflow: TextOverflow.ellipsis,
               textAlign: TextAlign.center,
              )),
          ])
          )
        );
  }

Puede hacerlo para todos los demás simplemente cambiando los parámetros de TextOverflow. La clase Final TextHome será así para todos los parámetros de desbordamiento.

Dart

import 'package:flutter/material.dart';
 
void main() {
  runApp(const TextHome());
}
 
class TextHome extends StatelessWidget {
  const TextHome({Key? key}) : super(key: key);
 
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        appBar: AppBar(
          title: const Text("TextOverflow"),
        ),
        body: Column(
          children: [
            Text("Ellipsis Example"),
            Container(
              padding: const EdgeInsets.all(10),
              child: const Text(
                "This is the example of TextOverflow ellipsis, In the end there are the dots",
                overflow: TextOverflow.ellipsis,
              ),
            ),
            Divider(),
            Text("fade Example"),
            Container(
              width: 500,
              height: 50,
              padding: const EdgeInsets.all(10),
              child: const Text(
                "This is the example of TextOverflow fade, In the end text is faded",
                overflow: TextOverflow.fade,
              ),
            ),
            Divider(),
            Text("clip Example"),
            Container(
              width: 500,
              height: 55,
              padding: const EdgeInsets.all(10),
              child: const Text(
                "This is the example of TextOverflow clip, This will clip the text",
                overflow: TextOverflow.clip,
              ),
            ),
            Divider(),
            Text("visible Example"),
            Container(
              width: 500,
              height: 50,
              padding: const EdgeInsets.all(10),
              child: const Text(
                "This is the example of TextOverflow visible, Text is visible",
                overflow: TextOverflow.visible,
              ),
            ),
          ],
        ),
      ),
    );
  }
}

Explicación: 

  • Main es el método principal que se ejecuta en un programa cargado.
  • Cuando se carga, Class TextHome se ejecuta.
  • Class TextHome es un widget sin estado, ya que solo necesitamos mostrar el texto desbordado.
  • Como Flutter se basa en widgets, tenemos que crear uno.
  • Una MaterialApp nos permite configurar el título y el tema.
  • Tomando MaterialApp como Andamio de Hogar.
  • Scaffold nos permite configurar AapBar y el cuerpo de la página.
  • Como AapBar se toma un título.
  • Como cuerpo, lleva una columna.
  • Columna Tomando un widget de contenedor.
  • El contenedor toma un texto secundario que vamos a aplicar el desbordamiento.
  • El texto primero toma el valor que vamos a mostrar y luego aplica el desbordamiento.

Producción: 

Output

 

Publicación traducida automáticamente

Artículo escrito por ms471841 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *