Cupertino
Na biblioteca Cupertino temos o duas opções de widget para estruturar a tela do aplicativo;
CupertinoPageScaffold: Onde temos uma barra de navegação no topo (onde utilizamos uma CupertinoNavigationBar e o restante da tela é com o conteúdo.
CupertinoTabScaffold: Similar ao widget anterior, porém além da barra de navegação superior, este fornece um layout que possui uma barra de navegação inferior, onde utilizando uma CupertinoTabBar e CupertinoTabView.
Outros componentes característicos de um aplicativo iOS nativo também estão disponíveis, como:
CupertinoActionSheet: Quando precisarmos oferecer opções de escolha para alguma ação.
CupertinoSegmentedControl: Utilizado para navegação por abas.
CupertinoPicker, CupertinoDatePicker e CupertinoTimerPicker: Para facilitar a entrada de dados pelo usuário.
Veja o código de um aplicativo combinando alguns destes widgets:
import 'package:flutter/cupertino.dart';
void main() => runApp(MeuCupertinoApp());
class MeuCupertinoApp extends StatelessWidget {
Widget build(BuildContext context) {
return CupertinoApp(
title: 'Cupertino App',
home: CupertinoTabScaffold(
tabBar: CupertinoTabBar(items: const <BottomNavigationBarItem>[
BottomNavigationBarItem(
icon: Icon(CupertinoIcons.home), label: 'Home'),
BottomNavigationBarItem(
icon: Icon(CupertinoIcons.settings), label:'Settings'),
]),
tabBuilder: (context, index) {
return const Center(child: Text('Hello World'));
},
),
);
}
}
Neste vídeo, os widget da biblioteca Cupertino são apresentados com maiores detalhes.