2017-02-15 5 views
1

flutterに新しい、flutter.ioが提供するhello_servicesサンプルを試しました。この例では、フラッタービューとネイティブビューの両方が同じ画面にあります。 私の質問は、フラッターで書かれたような2つの異なる画面にナビゲートする方法と、paramsまたはextrasと一緒にネイティブ(アンドロイド/イオス)で別の画面に移動する方法です。ありがとうフラッタースクリーンからネイティブ(アンドロイド/ ios)スクリーンまでナビゲートする方法

+0

@Ericザイデル任意の提案???? –

答えて

3

私が見つけた唯一の解決策は、ネイティブビュー(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; 
       } 
      }); 
関連する問題