住所から座標(緯度・経度)を取得する
メモ。
package com.freefly3104.geocoder01; import java.io.IOException; import java.util.List; import java.util.Locale; import android.app.Activity; import android.location.Address; import android.location.Geocoder; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; public class MainActivity extends Activity { private EditText editText; private TextView textView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); editText = (EditText) findViewById(R.id.editText1); textView = (TextView) findViewById(R.id.textView1); Button btn = (Button) findViewById(R.id.button1); // クリック処理(匿名クラス) btn.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO 自動生成されたメソッド・スタブ getlatitude(); } }); } private void getlatitude(){ Geocoder geocoder = new Geocoder(this, Locale.getDefault()); try{ String text = editText.getText().toString(); List<Address> addressList = geocoder.getFromLocationName(text, 1); Address address = addressList.get(0); double lat = address.getLatitude(); double lng = address.getLongitude(); String adr = Double.toString(lat) + "," + Double.toString(lng); textView.setText(adr); }catch(IOException e){ textView.setText("Err!"); } } }