nai*_*ail 6 android flutter flutter-appbar flutter-platform-channel
将 Flutter 集成到主机应用程序 ( docs ) 时,有几种方法可以做到,其中一种(最简单的)是通过FlutterActivity类在新 Activity 中打开 Flutter 。像这样:
// Java
hostActivity.startActivity(
FlutterActivity.withCachedEngine("my_engine_id").build(context)
);
Run Code Online (Sandbox Code Playgroud)
传统上,对于 Flutter 端的 Android 样式窗口,我们创建带有后退按钮的AppBar 。
此 AppBar后退按钮和 Android 系统后退按钮的行为必须相同:按下后退按钮时必须关闭(完成)前台活动。
当前系统后退按钮确实关闭了FlutterActivity,但是如何从 Flutters AppBar后退按钮模拟这种行为?
// Dart - Flutter side
...
child: AppBar(
leading: IconButton(
icon: Icon(Icons.arrow_back),
onPressed: () {
// WHAT MUST BE HERE?
}),
...
Run Code Online (Sandbox Code Playgroud)
建立 Flutter 端和主机之间的 PS 平台通道 - 我可以从任何端调用任何代码
找到解决方案:
SystemChannels.platform.invokeMethod<void>('SystemNavigator.pop');
Run Code Online (Sandbox Code Playgroud)
删除最顶层的 Flutter 实例,显示之前的内容。
在 Android 上,从堆栈中删除此 Activity 并返回到上一个 Activity。
此处的文档:api 参考
| 归档时间: |
|
| 查看次数: |
685 次 |
| 最近记录: |