我有一个ListView,当我点击一个项目时,它会进入单项视图。在每个单项视图页面中都有一个位置按钮。我需要在点击位置按钮时去谷歌地图
longtitute和latitude像这样保存在数据库中。 我想动态调用它 在列的每个单元格中,数据都是这样存储的,
数据作为对象存储在解析数据库中,而不是字符串
{ “LAT”:25.1250241, “LNG”:55.3752069}
任何人都知道请告诉我如何从中获取数据?
btn = (Button) findViewById(R.id.button5) ;
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
btn = (Button) findViewById(R.id.button56) ;
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
String data = String.format("geo:%s,%s", latitude, longitude);
intent.setData(Uri.parse(data));
startActivity(intent);
}
});
答案 0 :(得分:1)
使用Below方法从String解析数据当我传递字符串时,你需要在下面的方法中传递一个参数。
private void parseJsonData(){
try {
String jsonString = "{\"lat\":25.1250241,\"lng\":55.3752069}";
Object object = new JSONTokener(jsonString).nextValue();
if (object instanceof JSONObject) {
JSONObject jsonObject = (JSONObject) object;
double lat = Double.parseDouble(jsonObject.optString("lat"));
double lng = Double.parseDouble(jsonObject.optString("lat"));
Log.i(getClass().getSimpleName(),"lat="+lat);
Log.i(getClass().getSimpleName(),"lng="+lng);
}
} catch (JSONException e) {
e.printStackTrace();
}
}
答案 1 :(得分:0)
终于找到了方法..
这是我用来获取坐标
的代码
showCorporate = (Button) findViewById(R.id.individualEmail);
showCorporate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String[] location = corporateLocation.split(",");
double lat, lng;
try{
lat = fetchDouble(location[0], true);
lng = fetchDouble(location[1], false);
Log.d("Co-Ordinates",""+lat+", "+lng);
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
String data = String.format("geo:%s,%s", lat, lng);
intent.setData(Uri.parse(data));
startActivity(intent);
}catch (NullPointerException npe){
Toast.makeText(SingleCorporate.this, "Sorry No Location Available!", Toast.LENGTH_SHORT).show();
}
}
});