[英]Integrate a Flutter app in to another flutter app
我有一个名为 X 的较大应用程序,还有另一个名为 Y 的较小应用程序。它们现在彼此分开并且工作正常。 我想将应用 Y 集成到 X 中。我想将 Y 的代码放入 X 项目中,但它们应该有不同的 Main 以便我可以设置不同的主题和路线。 有没有办法做到这一点?
////更新////
我赞成所有答案,因为它们都是正确的。
但如果你知道这个,请回答。 我正在使用 GetX 的 GetMaterialApp 而不是 MaterialApp。 它返回错误
'package:flutter/src/widgets/framework.dart':断言失败:第 5334 行 pos 14:'_dependents.isEmpty':不正确。
我怎样才能解决这个问题?
您可以在您的项目中使用多个MaterialApp()
,组合代码/文件,就像应用程序在另一个屏幕上一样,您将导致应用程序对其InheritedWidget
有不同的引用,例如Theme
, Navigator
, MediaQuery
...
/*...*/
MaterialApp(
/*...*/
home: AppXHome(),
),
/*...*/
class AppXHome extends StatelessWidegt {
@override
Widget build(BuildContext context) {
return Column(
children: <Widget>[
Container(),
Container(),
MaterialApp(
home: AppYHome(),
),
],
),}}
您可以使用两个 MaterialApp 小部件来定义单独的路由,一个用于您的 APP X,另一个用于您的 APP Y,Main function 将保持不变,无需更改,
只需在 APP X 中为应用程序 Y 创建一个路由,并将您的应用程序 Y 代码包装在另一个 MaterialApp 小部件中,您可以在其中为应用程序 Y 定义路由。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.