Общие методы Flutter с примерами кода

Вот несколько методов, обычно используемых во Flutter, а также примеры кода:

  1. setState():
    Этот метод используется для обновления состояния StatefulWidget и запуска перестройки пользовательского интерфейса.

    class MyWidget extends StatefulWidget {
     @override
     _MyWidgetState createState() => _MyWidgetState();
    }
    class _MyWidgetState extends State<MyWidget> {
     int _counter = 0;
     void _incrementCounter() {
       setState(() {
         _counter++;
       });
     }
     @override
     Widget build(BuildContext context) {
       return Column(
         children: [
           Text('Counter: $_counter'),
           RaisedButton(
             onPressed: _incrementCounter,
             child: Text('Increment'),
           ),
         ],
       );
     }
    }
  2. initState():
    Этот метод вызывается, когда StatefulWidget впервые вставляется в дерево виджетов. Обычно он используется для инициализации переменных.

    class MyWidget extends StatefulWidget {
     @override
     _MyWidgetState createState() => _MyWidgetState();
    }
    class _MyWidgetState extends State<MyWidget> {
     int _counter = 0;
     @override
     void initState() {
       super.initState();
       _counter = 42; // Initializing the counter to 42
     }
     @override
     Widget build(BuildContext context) {
       return Text('Counter: $_counter');
     }
    }
  3. dispose():
    Этот метод вызывается, когда StatefulWidget удаляется из дерева виджетов. Обычно используется для очистки ресурсов.

    class MyWidget extends StatefulWidget {
     @override
     _MyWidgetState createState() => _MyWidgetState();
    }
    class _MyWidgetState extends State<MyWidget> {
     Timer _timer;
     @override
     void initState() {
       super.initState();
       _timer = Timer.periodic(Duration(seconds: 1), (_) {
         print('Tick');
       });
     }
     @override
     void dispose() {
       _timer.cancel(); // Cancel the timer when the widget is disposed
       super.dispose();
     }
     @override
     Widget build(BuildContext context) {
       return Container();
     }
    }
  4. didChangeDependities():
    Этот метод вызывается, когда изменяются зависимости StatefulWidget. Он обычно используется для асинхронных операций, таких как получение данных из API.

    class MyWidget extends StatefulWidget {
     @override
     _MyWidgetState createState() => _MyWidgetState();
    }
    class _MyWidgetState extends State<MyWidget> {
     String _data;
     @override
     void didChangeDependencies() {
       super.didChangeDependencies();
       fetchData();
     }
     Future<void> fetchData() async {
       final response = await http.get('https://api.example.com/data');
       setState(() {
         _data = response.body;
       });
     }
     @override
     Widget build(BuildContext context) {
       return Text('Data: $_data');
     }
    }

Это всего лишь несколько примеров методов, используемых во Flutter. Доступно множество других методов в зависимости от конкретных случаев использования и требований вашего приложения.