Una breve introducción al widget stateful (StatefulWidget) de los componentes básicos de Flutter

Una breve introducción al widget stateful (StatefulWidget) de los componentes básicos de Flutter

Widget con estado

StatefulWidget se aplica al escenario en el que el widget cambiará en tiempo de ejecución, es decir, el contenido que se muestra en la página debe cambiar según la interacción del usuario o el estado de la solicitud de red, es decir, se debe volver a dibujar un nuevo widget.
Por ejemplo, la página de la aplicación tiene un componente de cuadro de texto Tex y un componente de botón FloatingActonButton, el contenido que se muestra en el componente Tet cambia después de hacer clic en el botón.

Para usar StatefulWidget para realizar el cambio dinámico de los elementos Widget en la página, primero debe crear una clase A que herede de StatefulWidget y devuelva un objeto State<StatefulWidget> al implementar el método createState() en esta clase; luego cree un clase A que hereda de State Class B, generalmente dibuja la interfaz de la aplicación y algunos módulos de procesamiento lógico en clase B. Los pasos de implementación específicos se describen en detalle a continuación.

(1) Cree StatefulWidgetPage en una clase personalizada
heredada de StatefulWidget. El código de implementación de la clase heredada de StatefulWidget es el siguiente.


class mainpage extends StatefulWidget{
    
    
  @override
  State<StatefulWidget> createState() {
    
    
    // TODO: implement createState
    throw UnimplementedError();
  }
}

(2) Cree una clase personalizada que herede de State - StatefulWidgetPageState.

State es la clase que usa Flutter para renderizar widgets dinámicos. Cuando cambia el estado del widget, el objeto State llamará al método setState() para notificar al marco Flutter que vuelva a dibujar el widget. El código de implementación de la clase StatefulWidgetPageState heredado de la clase State es el siguiente.

class dengji extends State{
    
    
   String hh="快传温太医,娘娘要生了!";
  @override

  void showhh(){
    
    
    setState(() {
    
    
     hh='皇上,娘娘生了!!是位公主!!!';
    });
  }
  @override
  Widget build(BuildContext context) {
    
    
    // TODO: implement build

    return Scaffold(
      appBar: AppBar(title: Text('碎玉轩')),
        body:Text(hh),
        floatingActionButton: FloatingActionButton(
          child:Icon(Icons.airline_seat_flat),
    onPressed: (){
    
    
            showhh();
            print('生孩子ing。。。');
    },
    ),
    );
  }
}

El código *showhh();* indica que se llama al método showhh() cuando se hace clic en el botón flotante de la página, lo que cambia dinámicamente el contenido del componente Texto en la página llamando al método setState(), es decir, el valor de la variable hh.

La interfaz inicial después de abrir la página.
inserte la descripción de la imagen aquí

Después de hacer clic en el botón flotante, el texto se imprime y el contenido que se muestra en la página también cambia. .
inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/qq_43336158/article/details/123620027
Recomendado
Clasificación