Menu
CoddyTech

Виджеты из списка

Часть раздела Ваше первое приложение путешествия по Flutter на Coddy. Урок 29 из 32.

Записывать по одному элементу Text для каждого пункта становится утомительно, а при изменении списка такой код перестаёт работать. Dart может создавать виджеты за тебя: помести for внутрь списка:

List<String> colors = ['red', 'green', 'blue'];

Column(
  children: [
    for (String color in colors) Text(color),
  ],
)

Читай это так: для каждого color в colors добавь Text(color). Столбец получит три текстовых виджета, а если добавить в список четвёртый цвет, автоматически появится и четвёртый текстовый виджет.

challenge icon

Задание

Легко

Столбец показывает только первые две планеты. Покажи все четыре по порядку, используя один цикл for по списку planets вместо двух строк Text.

Попробуйте сами

import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    List<String> planets = ['Mercury', 'Venus', 'Earth', 'Mars'];
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        body: Center(
          child: Column(
            mainAxisSize: MainAxisSize.min,
            children: [
              Text(planets[0]),
              Text(planets[1]),
            ],
          ),
        ),
      ),
    );
  }
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Ваше первое приложение

Потренируйтесь самостоятельно: Онлайн-компилятор Flutter