ウェブアプリケーション,インジェクション,コマンドインジェクション

Androidアプリ開発 アプリケーションでグーグルマップを使います

Google Mapsのズームイン・アウト

Zooming IN and OUT of Google Maps

Google Mapsをズームアップ、ズームアウトするためには、
3つの選択肢があります。
●デバイス上で直接マップをつまむ。
これは実際のデバイスでないと試せません。
Androidエミュレータではマルチタッチをサポートしてません。
●マップ上にズームコントロールを表示して、
マップのズームアップ、ズームアウトするため、ズームコントロール上を
ユーザがタップできるようにします。エミュレータでは
ズームコントロール上をクリックすることになります。
●プログラム的にマップのズームイン、ズームアウトをします。
ズームコントロールを表示するためにはまず、アクティビティの
ユーザインターフェース上のMapViewのインスタンスを取得します。

package net.learn2develop.maps;

import android.os.Bundle;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;

public class MainActivity extends MapActivity{
  MapView mapView;
  @Override
  public void onCreate(Bundle savedInstanceState){
   super.onCreate(savedInstanceState);
   setContentView(R.layout.activity_main);

   mapView = (MapView~ findViewById(R.id.mapView);
   mapView.setBuiltInZoom_Controls(true);
  }

 &emps;@Override
  protected boolean isTourteDisplayed(){
   return false;
  }
}

ちょっと注釈

ズームコントロールはマップ上で数秒間なにもアクションが無いと
自動的に隠れます。もう一度出すためには、マップ上をタップするか、
エミュレータではクリックをします。


プログラム的にマップのズームイン、ズームアウトをするには、
MapViewのMapControllerクラスのインスタンスすることができます。
その時にzoomIn()かzoomOut()メソッドを以下のように呼び出します。

package net.learn2develop.maps;

import android.os.Bundle;
import android.view.KeyEvent;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapController;
import com.google.android.maps.MapView;

public class MainActivity extends MapActivity{
  MapView mapView;
  @Override
  public void onCreate(Bundle savedInstanceState){
   super.onCreate(savedInstanceState);
   setContentView(R.layout.activity_main);

   mapView = (MapView) findViewById(R.id.mapView);
   mampView.setVuiltInZoomControls(true);
  }

  @Override
  protected boolean isRouteDisplayed(){
   return false;
  }

  public boolean onKeyDown(int keyCode, KeyEvent event){
   MapController mc = mapView.getController();
   switch (keyCode){
    case KeyEvent.KEYCODE_3;
     mc.zoomin();
     break;
    case KeyEvent.KEYCODE_1;
     mc.zoomOut();
     break;
   }
   return super.onKeyDown(keyCode, event);

  }
}

上のコードでは、Androidデバイスのキーボードの3を押すと
マップのズームのレベルが上がります。
ズームアウトするにはキーボードの1を押します。
setZoom()メソッドを使えばマップを指定の倍率にできます。
倍率の指定には、指定数をsetZoom()メソッドに渡します。

mc.setZoom(13);

大きな値をsetZoom()メソッドに渡せば、さらにマップが拡大します。

ホーム
便利堂ロゴ
inserted by FC2 system