0

Sencha Touch V2.でアプリを開発しました。このアプリには地図があるMappaパネルが含まれています。この地図には、撮影されたさまざまな場所(カフェ)に対応するマーカーが入力されていますjsonファイルから。Sencha Touch 2アプリの機能要件

のApp地図パネルは次のように機能します

をマーカーでは、ユーザは、開始位置と終了位置の値を入力し、UPSを、ポップtextields開始と終了位置をクリックし、他のマーカーのいずれかに別のクリック結果として、開始位置と終了位置からの方向が地図上にプロットされます。私たちは、ボタンのクリックでマップ上にプロットされたGoogleマップに入力された場所の方向を容易にする必要があるともマップインスタンス(リフレッシュマップ)と場所を再作成する必要が

は、我々は、以下の機能を実装する必要があります別のボタン上の既存のマーカー(地図クリアボタン)をクリックして、異なる開始点と終了点の方向をユーザーが見つけるための新しいインスタンスを作成します。我々はしている

問題:

  1. ボタンクリックのハンドラを定義している間は(ハンドラが機能していなかった方向を取得して)実行されていないアクションが生じました。
  2. マップのインスタンスを再作成するために、マップをnullに設定しましたが、結果としてマーカーのないマップが作成されました。

は、誰もが戻ってアプリケーション/機能、長い時間のこの種を作成した煎茶タッチバージョン2.

答えて

0

で、このアプリのためにタスクを実行するに手伝ってもらえます。 フローティングformpanelを作成し、sourcedestinationエンドポイントのフィールドエントリを入力できます。

tap: function() { 
    var src = Ext.getCmp('srcField'); 
     var destn = Ext.getCmp('destField'); 
     var mode = Ext.getCmp('travelMode'); 
     var request = { 
     origin: src.getValue(), 
     destination: destn.getValue(), 
     travelMode: mode.getPressedButtons()[0].getText(), 
     }; 

    Ext.Ajax.request({ 
     url: 'http://maps.googleapis.com/maps/api/directions/json?origin='+src.getValue()+'&destination='+destn.getValue()+'&mode='+mode.getPressedButtons()[0].getText()+'&sensor=false'; 
      method:'post', 

      success : function(response) { 
       showDirections(response,request); 
      }   
    }); 

    function showDirections(res,req) { 
     var directionsService = new google.maps.DirectionsService(); 
     var directionsDisplay = new google.maps.DirectionsRenderer(); 
     var map = Ext.getCmp('googleMapComponentId').getMap(); 

     directionsService.route(request, function(response, status) { 
     if (status == google.maps.DirectionsStatus.OK) { 
      directionsDisplay.setDirections(response); 
      directionsDisplay.setMap(map); 
     } 
    }); 
    }        
- :

その後、あなたはボタン "行き方"、

コードスニペットのタップに以下のコードを書くことができ