Flutter快速启动插件quickstart的使用
Flutter快速启动插件quickstart的使用
该插件允许你创建一个具有以下功能的应用程序:
- 路由。
- 标签页及每个标签页独立导航。
- 根据屏幕大小显示底部导航栏或顶部菜单。
- 语言切换。
UI细节可能会随时更改。使用此插件时,如果你的功能需求优先于定制外观,并且可以接受一些非可定制的样式以节省几天的开发时间,那么这个插件非常适合你。
开箱即用的示例
最小化配置
import 'package:flutter/widgets.dart';
import 'package:quickstart/quickstart.dart';
Future<void> main() async {
await QuickStart.ensureInitialized();
runApp(const QuickApp());
}
使用Firebase
传递 FirebaseOptions
可启用身份验证和分析。
import 'package:flutter/widgets.dart';
import 'package:quickstart/quickstart.dart';
import 'firebase_options.dart';
Future<void> main() async {
await QuickStart.ensureInitialized(
firebaseOptions: DefaultFirebaseOptions.currentPlatform,
);
runApp(const QuickApp());
}
在设置页面上会自动显示登录按钮。默认情况下,这些按钮包括Google和Apple提供商。有关自定义的信息,请参阅下文。
在Firebase控制台中配置提供商,请遵循Firebase Auth入门指南。
自定义
通过继承 QuickDelegate
并将其传递给 ensureInitialized()
方法来实现自定义。
语言
要更改支持的语言列表,请重写 locales
获取器:
import 'package:flutter/widgets.dart';
import 'package:quickstart/quickstart.dart';
class AppDelegate extends DefaultQuickDelegate {
[@override](/user/override)
List<Locale> get locales => [Locales.en_GB];
}
Future<void> main() async {
await QuickStart.ensureInitialized(
delegate: AppDelegate(),
);
runApp(const QuickApp());
}
当只有一种语言时,语言切换不会显示。
身份验证提供商
默认情况下,应用程序显示Google和Apple提供商的登录按钮。要更改此设置,请重写 authProviders
获取器:
class AppDelegate extends QuickDelegate<TabEnum> {
[@override](/user/override)
List<String> get authProviders => [GithubAuthProvider.PROVIDER_ID];
}
Future<void> main() async {
await QuickStart.ensureInitialized(
delegate: AppDelegate(),
firebaseOptions: DefaultFirebaseOptions.currentPlatform,
);
runApp(const QuickApp());
}
完整示例Demo
以下是一个完整的示例Demo,展示了如何使用 quickstart
插件。
主文件 main.dart
import 'package:flutter/material.dart';
import 'package:quickstart/quickstart.dart';
// 自定义AppDelegate
class AppDelegate extends DefaultQuickDelegate {
[@override](/user/override)
List<Locale> get locales => [Locales.en_GB]; // 支持的本地化列表
[@override](/user/override)
List<String> get authProviders => [GithubAuthProvider.PROVIDER_ID]; // 支持的身份验证提供商
}
void main() async {
// 初始化quickstart
await QuickStart.ensureInitialized(
delegate: AppDelegate(),
firebaseOptions: DefaultFirebaseOptions.currentPlatform, // 如果需要使用Firebase
);
// 运行应用
runApp(const QuickApp());
}
更多关于Flutter快速启动插件quickstart的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html
1 回复