Виджет CupertinoTheme
Виджет CupertinoTheme оборачивает child
и подменяет data.
Текущие данные читают через
of.
Синтаксис
CupertinoTheme( data: CupertinoThemeData(brightness: Brightness.dark), child: child, )
Параметры
| Параметр | Описание |
|---|---|
data | CupertinoThemeData для поддерева. |
child | Виджеты, которые читают тему. |
Методы
| Метод | Описание |
|---|---|
of | Возвращает CupertinoThemeData из context. |
Пример
Давайте затемним часть экрана CupertinoTheme:
import 'package:flutter/cupertino.dart';
void main() {
runApp( CupertinoApp( home: Demo(), ), );
}
class Demo extends StatelessWidget {
@override
Widget build(BuildContext context) {
return CupertinoPageScaffold( child: Center( child: CupertinoTheme( data: const CupertinoThemeData(brightness: Brightness.dark),
child: Text('abcde'), ), ), )
}
}
Текст 'abcde' рисуется с тёмной темой CupertinoTheme.
Пример
Давайте прочитаем primaryColor через of:
import 'package:flutter/cupertino.dart';
void main() {
runApp( CupertinoApp( home: Demo(), ), );
}
class Demo extends StatelessWidget {
@override
Widget build(BuildContext context) {
final color = CupertinoTheme.of(context).primaryColor;
return CupertinoPageScaffold( child: Center( child: Text('12345',
style: TextStyle(color: color)), ), );
}
}
На экране текст '12345' окрашен primaryColor из of.
Смотрите также
-
виджет
CupertinoApp,
корень приложения iOS -
виджет
CupertinoPageScaffold,
экран с панелью iOS -
виджет
CupertinoNavigationBar,
верхняя панель iOS -
виджет
CupertinoButton,
кнопка iOS