マーカーをグループ分けしてON,OFF表示させたいのですが

105 views
Skip to first unread message

やま

unread,
Dec 19, 2009, 4:03:49 AM12/19/09
to Google-Maps-API-Japan
お世話になります。Google Maps API for Flashでチョコチョコやってます。

やりたいのは
十数個のマーカーをいくつかのグループに分けて、ボタン操作でグループごとにON,OFF表示させたいといった単純なことなんですが、いまいちやり方が
わかりません。

イメージとしては
http://gmaps-samples-flash.googlecode.com/svn/trunk/demos/MarkerCategoriesDemo/MarkerCategoriesDemo.html
が近いんですが、チェックボックスで1グループずつON,OFFでなく、Flashで数個のボタンを用意して、あるグループボタンを押したら他は自動的
に非表示になるといったイメージです。

どなたか参考になるサイトやソースコードご存知の方いらっしゃいましたら、ご教示よろしくお願いします。

Masashi.K

unread,
Dec 27, 2009, 4:03:25 PM12/27/09
to Google-Maps-API-Japan
やまさん

Maps API for Flashの場合、まとめてOn/Offするには、マーカーを1つずつ
ON/Offさせていくしかありません。
なので、こんな感じです。
(コードを直接ここに書いたので、未検証。ご参考程度に。)

-------------------------
function map_init(event : MapEvent) : void {
 //地図の初期化(省略)
  :

 //グループ単位でマーカーを配列に追加
 var markerGrp1 : Array = [];
 var markerGrp2 : Array = [];

 markerGrp1.push(createMarker(yyy, xxx));
  :
 markerGrp1.push(createMarker(yyy, xxx));

 markerGrp2.push(createMarker(yyy, xxx));
  :
 markerGrp2.push(createMarker(yyy, xxx));

 //地図に追加
 for(var m:Marker in markerGrp1) {
  map.addOverlay(m);
 }
 for(var m:Marker in markerGrp2) {
  map.addOverlay(m);
 }
}

//まとめてOn/Off
function groupVisible(grp : Array, visible : Boolean) : void {
for(var m:Marker in grp ) {
  m.visible = visible;
 }
}

//checkbox event
function toggleCheckBox(event : Event) : void {
 var chkbox : CheckBox = event.target as CheckBox;
 groupVisible(markerGrp1, chkbox.checked);
}

やま

unread,
Dec 27, 2009, 8:15:13 PM12/27/09
to Google-Maps-API-Japan
Masashi.Kさん

ありがとうございます。早速チャレンジしてみたいと思います。

p.s.
Google Maps 活用講座、サイトデザイン一新したんですね。びっくりしました。
見やすくなってますね。
(ただ for Flash関係の記事、サンプルが見当たらないようなんですが・・・)
これからもいろいろ参考にさせていただくと思います。
更なる発展、期待しています。

Masashi.K

unread,
Dec 29, 2009, 1:46:51 AM12/29/09
to Google-Maps-API-Japan
やまさん

> 見やすくなってますね。
ありがとうございます。

> (ただ for Flash関係の記事、サンプルが見当たらないようなんですが・・・)
バレましたか・・・笑
今回リニューアルして気がついたのですが、maps v3 と flash系のコンテンツが
あまりにも少なすぎたので、ちょっと補充しています。

> 更なる発展、期待しています。
ありがとうございます。
今後ともぜひよろしくお願いいたします。

Reply all
Reply to author
Forward
0 new messages