検索
AND検索
OR検索
トップ
|
リロード
|
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
勉強会/GoogleMap をテンプレートにして作成
詳細は
入会方法
をご覧下さい。
メニュー
日本Androidの会とは?
入会方法
イベント
技術資料
ワーキンググループ
支部
リリース
Japan Android Report
リンク
FAQ
権利関係
プライバシーポリシー
Twitter
公式Youtubeチャンネル
NPOサイト
最新の10件
2023-11-13
ABC2023A-pr
リリース
2023-10-13
MenuBar
入会方法
2023-09-17
ワーキンググループ/香川支部
2023-09-07
林田官呂
2023-08-19
イベント/イベント予定表
2023-06-11
日本Androidの会とは?
2023-06-01
秋葉 楓
2022-11-07
スタッフ
edit
Total:0/Today:0
開始行:
[[勉強会]]
* Google Mapを表示してみよう [#nda8313a]
MapActivityを使用して、Google Mapを表示するアプリケーショ...
以下、作成のポイントです。
- Google Mapを表示するビューは、com.google.android.maps.M...
-- 別ライブラリーなので、マニフェストにuses-libraryでcom....
-- インターネットにアクセスするので、マニフェストにuses-p...
-- Google Mapにアクセスするためにandroid:apiKeyの指定が必...
- Mapを制御するアクティビティは、com.google.android.maps....
-- isRouteDisplayedを実装する必要があります。ルート情報を...
- Mapのズームや表示位置の設定などは、MapControllerを取り...
- Mapを拡大、縮小するウィジェットは、getZoomContollerで取...
** 手順1: 新規のプロジェクトを作成する [#u71c58d3]
- "File -> New -> Project"を選択して、開いたダイアログで"...
- 開いたダイアログで、以下のように入力してFinishボタンを...
-- Project Name: hellomap
-- Package name: jp.hews.hellomap
-- Activity Name: HelloMapActivity
-- Application Name: ハローマップ
#ref(map.001.NewProject.jpg)
** 手順2: マニフェストファイルを設定する [#hbf9ed07]
パーミッションの設定や、ライブラリの設定を行うために、And...
- このアプリケーションは、インターネットにアクセスするの...
<uses-permission android:name="android.permission.INTERN...
- このアプリケーションは、MapViewを使用するので、applicat...
<uses-library android:name="com.google.android.maps"/>
- 上記の二つを追加したマニフェストファイルの全体は、以下...
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/...
package="jp.hews.hellomap"
android:versionCode="1"
android:versionName="1.0.0">
<application android:icon="@drawable/icon" android:l...
<activity android:name=".HelloMapActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.act...
<category android:name="android.intent.c...
</intent-filter>
</activity>
<!-- 以下のuses-libraryを追加 -->
<uses-library android:name="com.google.android.m...
</application>
<!-- 以下のuses-permissionを追加 -->
<uses-permission android:name="android.permission.IN...
</manifest>
** 手順3: レイアウトを決定する [#u0ce8235]
画面のレイアウトを決定するために、res/layout/main.xmlを編...
このアプリケーションでは、上部に水平方向のリニアレイアウ...
- レイアウトのリソースを作成します。res/layoutのmain.xml...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/...
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<com.google.android.maps.MapView
android:id="@+id/mapview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:enabled="true"
android:clickable="true"
android:apiKey=<取得したMaps API Key>
/>
</LinearLayout>
** 手順4: MapActivityを継承する [#f58bb354]
配置したMapViewの処理を呼び出すために、アクティビティのベ...
- srcの下のjp.hews.hellomapのHelloMapActivity.javaを開い...
public class HelloMapActivity extends MapActivity {
- 抽象メソッドのisRouteDisplayedを実装します。エラーの小...
@Override
protected boolean isRouteDisplayed() {
return false;
}
- プロジェクトを右クリックして、"Run As"->"Android Applic...
#ref(map.002.DefaultMapActivity.png)
** 手順5: Mapを拡大して表示する [#ibb21f83]
このままでは、地図が大きすぎるので、拡大して表示してみま...
- onCreateメソッドの中で、findViewByIdを使用してMapViewク...
MapView m = (MapView)findViewById(R.id.mapview);
- MapViewからMapControllerを取り出します。ズームレベルと...
MapController c = m.getController();
- コントローラを使用してズームレベルと、表示する場所を設...
c.setZoom(15);
c.setCenter(new GeoPoint(35455281,139629711));
** 手順6: ズームコントロールのViewを追加する [#aec24a48]
- 地図を拡大縮小するウィジェットを、MapViewから取り出すこ...
- このコントロールをビューに追加することで、タッチすると...
ZoomControls zc = (ZoomControls) m.getZoomContr...
zc.setLayoutParams(new ViewGroup.LayoutParams(V...
zc.setGravity(Gravity.BOTTOM + Gravity.CENTER_H...
m.addView(zc);
- この時点で、ソースコードは、以下のようになっています。
package jp.hews.hellomap;
import android.os.Bundle;
import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapController;
import com.google.android.maps.MapView;
public class HelloMapActivity extends MapActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
MapView m = (MapView)findViewById(R.id.mapview);
MapController c = m.getController();
c.setZoom(15);
c.setCenter(new GeoPoint(35455281,139629711));
ZoomControls zc = (ZoomControls) m.getZoomContr...
zc.setLayoutParams(new ViewGroup.LayoutParams(V...
zc.setGravity(Gravity.BOTTOM + Gravity.CENTER_H...
m.addView(zc);
}
@Override
protected boolean isRouteDisplayed() {
return false;
}
}
- 実行すると、以下の画面が表示されます。
#ref(map.003.MapActivity.png)
----
[[ワーキンググループ/勉強会]]
終了行:
[[勉強会]]
* Google Mapを表示してみよう [#nda8313a]
MapActivityを使用して、Google Mapを表示するアプリケーショ...
以下、作成のポイントです。
- Google Mapを表示するビューは、com.google.android.maps.M...
-- 別ライブラリーなので、マニフェストにuses-libraryでcom....
-- インターネットにアクセスするので、マニフェストにuses-p...
-- Google Mapにアクセスするためにandroid:apiKeyの指定が必...
- Mapを制御するアクティビティは、com.google.android.maps....
-- isRouteDisplayedを実装する必要があります。ルート情報を...
- Mapのズームや表示位置の設定などは、MapControllerを取り...
- Mapを拡大、縮小するウィジェットは、getZoomContollerで取...
** 手順1: 新規のプロジェクトを作成する [#u71c58d3]
- "File -> New -> Project"を選択して、開いたダイアログで"...
- 開いたダイアログで、以下のように入力してFinishボタンを...
-- Project Name: hellomap
-- Package name: jp.hews.hellomap
-- Activity Name: HelloMapActivity
-- Application Name: ハローマップ
#ref(map.001.NewProject.jpg)
** 手順2: マニフェストファイルを設定する [#hbf9ed07]
パーミッションの設定や、ライブラリの設定を行うために、And...
- このアプリケーションは、インターネットにアクセスするの...
<uses-permission android:name="android.permission.INTERN...
- このアプリケーションは、MapViewを使用するので、applicat...
<uses-library android:name="com.google.android.maps"/>
- 上記の二つを追加したマニフェストファイルの全体は、以下...
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/...
package="jp.hews.hellomap"
android:versionCode="1"
android:versionName="1.0.0">
<application android:icon="@drawable/icon" android:l...
<activity android:name=".HelloMapActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.act...
<category android:name="android.intent.c...
</intent-filter>
</activity>
<!-- 以下のuses-libraryを追加 -->
<uses-library android:name="com.google.android.m...
</application>
<!-- 以下のuses-permissionを追加 -->
<uses-permission android:name="android.permission.IN...
</manifest>
** 手順3: レイアウトを決定する [#u0ce8235]
画面のレイアウトを決定するために、res/layout/main.xmlを編...
このアプリケーションでは、上部に水平方向のリニアレイアウ...
- レイアウトのリソースを作成します。res/layoutのmain.xml...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/...
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<com.google.android.maps.MapView
android:id="@+id/mapview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:enabled="true"
android:clickable="true"
android:apiKey=<取得したMaps API Key>
/>
</LinearLayout>
** 手順4: MapActivityを継承する [#f58bb354]
配置したMapViewの処理を呼び出すために、アクティビティのベ...
- srcの下のjp.hews.hellomapのHelloMapActivity.javaを開い...
public class HelloMapActivity extends MapActivity {
- 抽象メソッドのisRouteDisplayedを実装します。エラーの小...
@Override
protected boolean isRouteDisplayed() {
return false;
}
- プロジェクトを右クリックして、"Run As"->"Android Applic...
#ref(map.002.DefaultMapActivity.png)
** 手順5: Mapを拡大して表示する [#ibb21f83]
このままでは、地図が大きすぎるので、拡大して表示してみま...
- onCreateメソッドの中で、findViewByIdを使用してMapViewク...
MapView m = (MapView)findViewById(R.id.mapview);
- MapViewからMapControllerを取り出します。ズームレベルと...
MapController c = m.getController();
- コントローラを使用してズームレベルと、表示する場所を設...
c.setZoom(15);
c.setCenter(new GeoPoint(35455281,139629711));
** 手順6: ズームコントロールのViewを追加する [#aec24a48]
- 地図を拡大縮小するウィジェットを、MapViewから取り出すこ...
- このコントロールをビューに追加することで、タッチすると...
ZoomControls zc = (ZoomControls) m.getZoomContr...
zc.setLayoutParams(new ViewGroup.LayoutParams(V...
zc.setGravity(Gravity.BOTTOM + Gravity.CENTER_H...
m.addView(zc);
- この時点で、ソースコードは、以下のようになっています。
package jp.hews.hellomap;
import android.os.Bundle;
import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapController;
import com.google.android.maps.MapView;
public class HelloMapActivity extends MapActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
MapView m = (MapView)findViewById(R.id.mapview);
MapController c = m.getController();
c.setZoom(15);
c.setCenter(new GeoPoint(35455281,139629711));
ZoomControls zc = (ZoomControls) m.getZoomContr...
zc.setLayoutParams(new ViewGroup.LayoutParams(V...
zc.setGravity(Gravity.BOTTOM + Gravity.CENTER_H...
m.addView(zc);
}
@Override
protected boolean isRouteDisplayed() {
return false;
}
}
- 実行すると、以下の画面が表示されます。
#ref(map.003.MapActivity.png)
----
[[ワーキンググループ/勉強会]]
ページ名: