Ответ
Cupertino — это библиотека виджетов Flutter, реализующая дизайн-систему iOS (Human Interface Guidelines). Эти виджеты визуально соответствуют нативным iOS-компонентам.
Основные виджеты:
CupertinoApp— корневой виджет вместоMaterialAppCupertinoNavigationBar— навигационная панель iOS-стиляCupertinoButton— кнопка с iOS-анимациейCupertinoPicker— колесо выбораCupertinoSwitch— переключательCupertinoActivityIndicator— индикатор загрузки
Пример использования CupertinoApp:
import 'package:flutter/cupertino.dart';
void main() => runApp(const MyApp());
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return const CupertinoApp(
title: 'iOS Style App',
home: CupertinoPageScaffold(
navigationBar: CupertinoNavigationBar(
middle: Text('Home'),
),
child: Center(
child: CupertinoButton(
onPressed: () {},
child: Text('Press Me'),
),
),
),
);
}
}
Когда использовать:
- При разработке iOS-эксклюзивных приложений
- Для кросс-платформенных приложений, где нужен нативный iOS-вид на Apple-устройствах
- При создании дизайн-системы, адаптирующейся под платформу
Важно: Cupertino-виджеты работают на всех платформах, но визуально оптимизированы под iOS. Для адаптивного дизайна часто используют Platform.isIOS проверку для выбора между Material и Cupertino.