最近のアクセス:
SD Maps コントロール
スマートデバイスの Map (SD Maps) コントロールは、地図を使用してロケーションを表示し、そのロケーションとやり取りするための高度な方法を提供します。
ロケーションとは、Geography データタイプ (またはその派生データタイプである GeoPoint) に基づく項目属性または変数です。Geolocation ドメインを使用してロケーションを定義することもできますが、この方法は廃止される予定です (Geography に変更予定)。ロケーションフィールドが含まれている Grid コントロールでデータをリストすると、地図として表示できます。
たとえば、Stadiums トランザクションがある場合、値を通常の Grid コントロールでリストすることも、ロケーション項目属性を使用して地図上に表示することもできます。  
イメージ:42467.png

コントロールを使用する前に必要な操作

デバイスで地図を表示できるようにするには、アプリケーションで使用するマッププロバイダー用の API キーを取得する必要があります。
iOS
  
Apple Maps API キー不要
Google Maps [ Apple Maps API Key ] プロパティを使用
Android Google Maps [ Android Google Services API Key ] プロパティを使用
Baidu Maps [ Android Maps API Key ] プロパティを使用
AutoNavi Maps

コントロールの使用

地図として使用するグリッドに移動し、グリッドの [ Control Type ] プロパティの値を SD Maps に設定します。次に、[ Location Attribute ] プロパティ (グリッドが SDT にリンクされている場合は [ Location Field Specifier ] プロパティ) に、ロケーションのデータを含む項目属性/変数/フィールドを設定します。
イメージ:42466.png
このロケーションの項目属性/変数/フィールドはグリッドレイアウトに表示する必要はありません。グリッドレイアウトで設定されている内容は、地図上の各ポイントをタップすると表示されます。
イメージ:42469.png

プロパティ

SD Maps コントロールの動作を制御する、いくつかのプロパティがあります。
Show My Location このプロパティが True の場合、デバイスの現在の位置が地図上に表示されます。
Map Type コントロールで使用する地図のタイプを指定します。
  • Standard: ストリートを表示します。
  • Satellite: 地球の衛星画像を表示します。
  • Hybrid: 衛星画像の上にストリートを表示します。
User Can Choose Map Type このプロパティが True の場合、実行時に地図のタイプを選択するためのボタンが画面上に表示されます。
Location Attribute 必須入力項目です。地図上のポイントをロードするのに使用する項目属性または変数を指定します。Grid コントロールSDT にリンクされている場合は、[ Location Field Specifier ] プロパティを使用する必要があります。
Pin Show My Location デバイスの現在の位置を表示するのに使用する Image オブジェクトを指定します。このプロパティを設定しない場合、[ Pin Image ] プロパティ (設定している場合) からピン画像が取り込まれます。 [ Pin Image ] プロパティを設定していない場合は、プラットフォームの既定のピンが使用されます。
Pin Image 地図上に表示するすべてのピンの画像に使用する Image オブジェクトを指定します。
このプロパティ (または、次に説明する [ Pin Image Attribute ] プロパティ) を設定しない場合、プラットフォームの既定のピン画像が使用されます。
Pin Image Attribute このプロパティを設定すると、指定した項目属性/変数にロードされた値を使用して、地図上の各ポイントが表示されます。地図上のさまざまなポイントにそれぞれ異なるピン画像を使用する必要がある場合は、このプロパティが便利です。Grid コントロールSDT にリンクされている場合は、[ Pin Image Field Specifier ] プロパティを使用する必要があります。
Pin Image Class 地図上にピン画像を表示するのに使用するテーマクラスです。
Show Traffic このプロパティが True の場合、トラフィック情報を表示します。トラフィック情報は、表示されている領域のトラフィック情報をマッププロバイダーが提供する場合のみ表示されます。
Initial Zoom 起動時の地図の表示方法を指定します。
  • Show all points:  (既定値) ロードされたすべてのポイント (および、 [ Show My Location ] が True の場合はデバイスの現在のロケーション) を表示するように、地図が調整されます。
  • Nearest point visible: デバイスの現在のロケーションを表示するように地図が調整され、自分の位置と最寄りのポイントが表示されます。
  • Radius: 指定した地点を中心とする固定半径を表示するように地図が調整されます。半径の値は、次に説明する [ Initial Zoom Radius Attribute ] プロパティで指定します。
  • No initial zoom: ズームの初期値について指定されたアクションはありません。使用するプラットフォームやプロバイダーによって異なる動作になります。
Initial Zoom Radius Attribute Numeric タイプにする必要があります。指定した地点を中心として表示する最小距離 (メートル単位) を設定します。すべての方向で少なくともこの距離が表示されるよう、地図のズームレベルが調整されます。このプロパティで SDT 変数を使用する場合は、[ Initial Zoom Radius Field Specifier ] プロパティを設定する必要があります。
Center 起動時に地図の中心となる位置を指定します。
  • Default: ロードされたポイントによって決まります。
  • My Location: デバイスの現在のロケーションになります。
  • Custom: 特定のロケーションを使用します。このロケーションは、次に説明する [ Custom Center Attribute ] プロパティで指定します。
Custom Center Attribute Geography データタイプである必要があります (または Geolocation ドメインに基づく)。このプロパティは、地図の中心となるポイントを示します。このプロパティで SDT 変数を使用する場合は、[ Custom Center Field Specifier ] プロパティを設定する必要があります。
Selection Layer イベントを実行するだけでなく、地図内をナビゲートし、地図の中心を使用してロケーションを選択できるようにします。詳細については、こちらのドキュメントを参照してください。
Directions Layer 地図上の 2 つのポイント間の経路を描けるようにします。詳細については、こちらのドキュメントを参照してください。

メソッド

注: インデックスはピンがロードされた順序に対応します。最初にロードされたピンはインデックス 1、2 番目にロードされたピンはインデックス 2 になります。
 
Select
 
フォーカスが置かれ、地図に描画されるインデックスを選択します。
 
戻り値: なし
パラメーターインデックス: Numeric
Deselect
 
選択したインデックスからフォーカスを外します。このメソッドを使用するにはインデックスが指定されている必要があります。指定されたインデックスが現在選択されているものである必要はありませんが、メソッドを使用するにはインデックスを渡す必要があります。
 
戻り値: なし
パラメーター: Index: Numeric
 
SelectedIndex
 
現在選択されているインデックスを返します。
 
戻り値:  なし
パラメーター:  なし
 

イベント

SelectionChanged
 
コードを使用して、またはアプリケーションユーザーが手動で、地図上のインデックスを選択または選択解除するたびに、このイベントがトリガーされます。

  • Android デバイスでは、デバイスの画面解像度に関係なく、同じサイズになるようにピン画像が拡大または縮小されます。すべてのピン画像サイズが許可されている場合でも、40 x 40 の画像サイズを使用することを推奨します。このトピックについては、ここここを参照してください。
  • GeneXus 16 以降では、[ Show Navigation on Full Screen ] プロパティはサポートされません。


サブページ
Created: 14/09/18 03:08 by Admin Last update: 20/01/19 17:50 by Admin
カテゴリ
Powered by GXwiki 3.0