スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

タグ :

   印刷ボタン       この記事に拍手する       このエントリーをはてなブックマークに追加

Return to page top

  • Comments (Close): -
  • TrackBack (Close): -

住所から地図を出力

Google Mapを表示することができ、住所から座標を割り出すことができれば、簡単な地図アプリケーションを作ることができます。

今回は、EditTextに住所を入力して検索ボタンを押すと地図が表示されるアプリケーションを作ります。

20110910_1


main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<LinearLayout
android:orientation="horizontal"
android:layout_height="wrap_content"
android:layout_width="fill_parent">
<EditText
android:id="@+id/editText1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_weight="1">
</EditText>
<Button
android:id="@+id/button1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="@string/button1">
</Button>
</LinearLayout>
<com.google.android.maps.MapView
android:id="@+id/mapView1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true"
android:apiKey="APIキー" />
</LinearLayout>




strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">HelloAndroid</string>
<string name="button1">検索</string>
</resources>




HelloAndroid.java
package sample.basic;

import android.os.Bundle;
import com.google.android.maps.MapActivity;
import android.widget.Button;
import java.util.Locale;
import android.view.View;
import android.widget.EditText;
import com.google.android.maps.MapView;
import android.location.Geocoder;
import java.util.List;
import android.location.Address;
import com.google.android.maps.MapController;
import com.google.android.maps.GeoPoint;
import java.io.IOException;

public class HelloAndroid extends MapActivity {

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

Button button1=(Button)findViewById(R.id.button1);

button1.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
EditText editText1=(EditText)findViewById(R.id.editText1);
MapView mapView1=(MapView)findViewById(R.id.mapView1);
Geocoder geocoder = new Geocoder(HelloAndroid.this, Locale.getDefault());
try{
List<Address> addressList = geocoder.getFromLocationName(editText1.getText().toString(), 1);
Address address = addressList.get(0);
double lat = address.getLatitude();
double lng = address.getLongitude();
MapController mc=mapView1.getController();
mc.setZoom(18);
mc.setCenter(new GeoPoint((int)(lat * 1E6),(int)(lng * 1E6)));
mapView1.setBuiltInZoomControls(true);
}catch(IOException e){
e.printStackTrace();
}
}
});
}
@Override
protected boolean isRouteDisplayed() {
return false;
}
}


コードは長いですが、特段新しい知識はありません。

関連記事
スポンサーサイト

タグ :

   印刷ボタン       この記事に拍手する       このエントリーをはてなブックマークに追加

Return to page top

Comments:

Comment Form
Only inform the site author.

Trackback+Pingback:

TrackBack URL for this entry
http://androidhacker.blog94.fc2.com/tb.php/48-69d547f6
  • 閉じるボタン
レファレンス
月別アーカイブ
リンク
カテゴリ
QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。