【发布时间】:2017-02-15 11:05:54
【问题描述】:
我是 Flutter 新手,尝试了 flutter.io 提供的 hello_services 示例。 在那个例子中,颤动视图和原生视图都在同一个屏幕上。 我的问题是,如何导航到两个不同的屏幕,比如一个用颤振写的,另一个用原生(android/ios)用参数或额外的。请帮助!!!!谢谢
【问题讨论】:
-
@Eric Seidel 有什么建议吗???
标签: flutter
我是 Flutter 新手,尝试了 flutter.io 提供的 hello_services 示例。 在那个例子中,颤动视图和原生视图都在同一个屏幕上。 我的问题是,如何导航到两个不同的屏幕,比如一个用颤振写的,另一个用原生(android/ios)用参数或额外的。请帮助!!!!谢谢
【问题讨论】:
标签: flutter
我找到的唯一解决方案是将消息发送到您的本机视图 (https://flutter.io/platform-services/),在 Java 或 Swift/ObjectiveC 代码中捕获消息,然后导航到另一个视图。
飞镖代码
Map params = <String, dynamic>{
"view": "MyView"
};
PlatformMessages.sendJson("navigateTo", params);
Java 代码
flutterView.addOnMessageListener("navigateTo", new FlutterView.OnMessageListener() {
@Override
public String onMessage(FlutterView view, String message) {
try {
JSONObject object = new JSONObject(message);
if (object.getString("view") == "MyView") {
// navigate to MyView
}
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
});
【讨论】: