如何在颤振屏幕和本机(android / ios)屏幕之间导航

时间:2017-02-15 11:05:55

标签: flutter

我刚接触,尝试了flutter.io提供的hello_services示例。 在该示例中,颤振视图和本机视图都在同一屏幕中。    我的问题是,如何导航到两个不同的屏幕,如一个写在颤动和另一个在本机(android / ios)与params或extras.Please帮助!!!!感谢

1 个答案:

答案 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;
                }
            });