fol*_*ira 27 android google-maps
我正在尝试返回用户在Google Maps Android应用程序中选择的位置,但我似乎无法找到有关如何完成此任务的信息.
我创建了一个Intent来打开GMaps Activity,但是用户无法在地图上选择一个点,也不会在关闭时将Activity返回给我的应用程序.
我正在使用startActiviyForResult,因为我期待从活动回来的结果.
Sud*_*pta 45
您可以简单地使用PlacePicker而不是实现自己的MapActivity.您需要在项目中添加Google Play服务库参考.
只需使用PlacePicker.IntentBuilder提供的意图startActivityForResult即可
int PLACE_PICKER_REQUEST = 1;
PlacePicker.IntentBuilder builder = new PlacePicker.IntentBuilder();
Context context = getApplicationContext();
startActivityForResult(builder.build(context), PLACE_PICKER_REQUEST);
Run Code Online (Sandbox Code Playgroud)
然后在onActivityResult中接收结果
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == PLACE_PICKER_REQUEST) {
if (resultCode == RESULT_OK) {
Place place = PlacePicker.getPlace(data, this);
String toastMsg = String.format("Place: %s", place.getName());
Toast.makeText(this, toastMsg, Toast.LENGTH_LONG).show();
}
}
}
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅https://developers.google.com/places/android/placepicker.
回答你的问题有点太晚,但希望这可以帮助有相同要求的人.
对于maps API V2,您可以使用onMapClickListener.
map.setOnMapClickListener(new GoogleMap.OnMapClickListener() {
@Override
public void onMapClick(LatLng point) {
Toast.makeText(getApplicationContext(), point.toString(), Toast.LENGTH_SHORT).show();
}
});
Run Code Online (Sandbox Code Playgroud)
有关详细信息:https://developers.google.com/maps/documentation/android/interactivity
小智 5
没有这种可能性 - 您只能打开指定位置的地图http://developer.android.com/guide/appendix/g-app-intents.html.
相反,您应该使用Maps External Library使用MapView创建自己的Activity .
| 归档时间: |
|
| 查看次数: |
47300 次 |
| 最近记录: |