我刚接触,尝试了flutter.io提供的hello_services示例。 在该示例中,颤振视图和本机视图都在同一屏幕中。 我的问题是,如何导航到两个不同的屏幕,如一个写在颤动和另一个在本机(android / ios)与params或extras.Please帮助!!!!感谢
答案 0 :(得分:4)
我找到的唯一解决方案是将消息发送到您的本机视图(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;
}
});