AndroidDevelopersのチュートリアルのGoogle Map Viewを実行します。
※その2は「Google Map Viewチュートリアル」のPart 2: Adding Overlay Itemsのコードを実行します。
【手順1】
1.「Androidプロジェクトの作成方法」の手順で、「AndroidSample025-HelloGoogleMaps2」といプロジェクトを作成。
※プロジェクトの設定は以下の通り。
2.「res/drawable/ディレクトリの作成方法」の手順で、「res/drawable/」ディレクトリを作成。
【手順2】
1.「Google Map Viewチュートリアル」を開く。
2.画像を右クリックし、「名前を付けて画像を保存」を選択。
【手順3】
1.【手順1】で作成したプロジェクトの「res/drawable」ディレクトリを選択。
2.「保存」ボタンをクリック。
【手順4】
1.「AndroidSample025-HelloGoogleMaps2」のプロジェクトを選択し、「リフレッシュ(ローカルファイルとの同期)の方法」の手順で同期を実施。
2.「AndroidManifest.xml」を以下の様に入力。
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.androidsample025" android:versionCode="1" android:versionName="1.0" > <uses-permission android:name="android.permission.INTERNET" /> <uses-sdk android:minSdkVersion="15" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@android:style/Theme.NoTitleBar" > <uses-library android:name="com.google.android.maps" /> <activity android:name=".HelloGoogleMaps2" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
3.「Ctrl+Shift+F」を押し、ソースコードをフォーマッティング。
4.「res/layout/main.xml」を以下の様に入力。
<?xml version="1.0" encoding="utf-8"?> <com.google.android.maps.MapView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/mapview" android:layout_width="fill_parent" android:layout_height="fill_parent" android:apiKey="XXX" android:clickable="true" />
6.「Ctrl+Shift+F」を押し、ソースコードをフォーマッティング。
7.「Javaクラスファイルの作成方法」の手順で、「HelloItemizedOverlay.java」を作成する。
8.「HelloItemizedOverlay.java」を以下の様に入力。
package com.example.androidsample025; import java.util.ArrayList; import android.app.AlertDialog; import android.content.Context; import android.graphics.drawable.Drawable; import com.google.android.maps.ItemizedOverlay; import com.google.android.maps.OverlayItem; public class HelloItemizedOverlay extends ItemizedOverlay { private Context mContext; private ArrayListmOverlays = new ArrayList (); public HelloItemizedOverlay(Drawable defaultMarker) { super(boundCenterBottom(defaultMarker)); } public void addOverlay(OverlayItem overlay) { mOverlays.add(overlay); populate(); } public HelloItemizedOverlay(Drawable defaultMarker, Context context) { super(boundCenterBottom(defaultMarker)); mContext = context; } @Override protected OverlayItem createItem(int i) { return mOverlays.get(i); } @Override public int size() { return mOverlays.size(); } @Override protected boolean onTap(int index) { OverlayItem item = mOverlays.get(index); AlertDialog.Builder dialog = new AlertDialog.Builder(mContext); dialog.setTitle(item.getTitle()); dialog.setMessage(item.getSnippet()); dialog.show(); return true; } }
9.「HelloGoogleMaps2.java」を以下の様に入力。
package com.example.androidsample025; import java.util.List; import android.graphics.drawable.Drawable; import android.os.Bundle; import com.google.android.maps.GeoPoint; import com.google.android.maps.MapActivity; import com.google.android.maps.MapView; import com.google.android.maps.Overlay; import com.google.android.maps.OverlayItem; public class HelloGoogleMaps2 extends MapActivity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); MapView mapView = (MapView) findViewById(R.id.mapview); mapView.setBuiltInZoomControls(true); ListmapOverlays = mapView.getOverlays(); Drawable drawable = this.getResources().getDrawable( R.drawable.androidmarker); HelloItemizedOverlay itemizedoverlay = new HelloItemizedOverlay( drawable, this); GeoPoint point = new GeoPoint(19240000, -99120000); OverlayItem overlayitem = new OverlayItem(point, "Hola, Mundo!", "I'm in Mexico City!"); GeoPoint point2 = new GeoPoint(35410000, 139460000); OverlayItem overlayitem2 = new OverlayItem(point2, "Sekai, konichiwa!", "I'm in Japan!"); itemizedoverlay.addOverlay(overlayitem); itemizedoverlay.addOverlay(overlayitem2); mapOverlays.add(itemizedoverlay); } @Override protected boolean isRouteDisplayed() { return false; } }
10.「Ctrl+Shift+F」を押し、ソースコードをフォーマッティング。
11.「Androidプロジェクトの実行方法」の手順で、「Androidプロジェクト」を実行。
12.エミュレータが起動しロックを解除し、以下の様にアプリケーションが実行されれば成功です。
【手順5】
1.アイコンをクリックすると、メッセージが表示されます。
以上です。
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。