В нашем примере мы возвращаем объект MaterialApp, который создаем посредством конструктора. А в конструктор передаем название, тему и виджет home, которому назначаем Scaffold – скелет приложения, который в свою очередь содержит appBar и body. Здесь уместна аналогия с HTML, где также есть тэги
и .
Давайте немного увеличим текст и поиграем цветами:
Виджету Scaffold мы задали красный фон, а виджету текста применили стиль, чтобы сделать его больше и заметнее.
Привет, Мир! на Андроид
Преимущество Flutter в том, что вся логика работы с внешним видом приложения (UI) прописывается в коде на том же языке, что и бизнес-логика – на dart. Нет необходимости залезать в папку с ресурсами и редактировать xml верстку.
Запускаем Hello World на iOS
Мы же пишем кроссплатформенный код! Давайте запустим созданное приложение на iOS-девайсе. Для этого просто выберите подключенный iOS-девайс или эмулятор в dropdown-списке и нажмите «Запустить».
Выбор эмулятора iOS
Привет, Мир! на iOS
Экран выглядит потрясающе, однако вверху экрана мешается ненужная иконка debug, да и иконка приложения сейчас никакая. Исправим это.
Для того, чтобы убрать ленточку debug, в добавьте в MaterialApp флаг debugShowCheckedModeBanner со значением false
return MaterialApp (
debugShowCheckedModeBanner: false,
Чтобы поменять иконку, нужно добавить в pubspec. yaml пакет
dev_dependencies:
flutter_launcher_icons: ^0.7.4
Этот пакет значительно упростит нам добавление иконки для двух платформ сразу. Добавим теперь в корне проекта папку assets с иконкой, а также пропишем путь к иконке
flutter_icons:
android: «launcher_icon»
ios: true
image_path: «assets/icons/flyflutter_ic_512.webp»
не забудьте сказать flutter, чтобы смотрел папочку assets
uses-material-design: true
assets:
– assets/
– assets/icons/
После этого для генерации иконок запустите в терминале команды
flutter pub get
flutter pub run flutter_launcher_icons: main
Чтобы поменять лейбл (название иконки) приложения:
Для Android – найдите манифест в android/app/src/main/AndroidManifest. xml и добавьте в тег application строку
android: label=«FlyFlutter»
Для iOS же зайдите в Info.plist по пути ios>runner/Info.plist и для ключа укажите имя CFBundleName
Готово. Запустите снова для проверки.