我已经在我的应用中实施了Google地图,并在点击地图时进行反向地理编码。我正在使用This API。但它在单击时给了我不止一个结果。我知道谷歌为什么会这样。
然后我查看PlacePicker widget for Android
,但我无法使用该小部件而无需打开另一个地图屏幕来选择位置。
我想要的是我想使用我的谷歌地图屏幕获取点击位置而不是打开PlacePicker屏幕。我只是希望PlacePicker
使用我已实现的地图,即希望PlacePicker
响应地图点击并在不打开小部件的情况下放置,如果这是不可能的,那么请告诉我其他解决方案,以便在地图上获得一个正确的位置挖掘?提前谢谢
更新
为什么我要对问题进行结束投票?它不是太宽泛?简单地说,我想知道是否可以使用Google Map(MapView | SuportFragment)作为PlacePicker的主屏幕。请看下面的代码
int PLACE_PICKER_REQUEST = 1;
PlacePicker.IntentBuilder builder = new PlacePicker.IntentBuilder();
// I don't want this line, Don't want PlacePicker to open another Map Screen to allow user to pick place.
startActivityForResult(builder.build(this), PLACE_PICKER_REQUEST);
现在看下面的代码
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();
}
}
}
当用户从PlacePicker
屏幕中选择一个地点并且该屏幕返回带有选定地点的Intent
时,将执行以上代码。有没有办法在谷歌地图上用lat,lng制作那种“意图”?这样我就能得到Place细节。我不想使用反向地理编码,因为它给了我很多结果。
答案 0 :(得分:0)
我不知道有关谷歌地理API或PlacePicker api的任何信息。
google独立的android标准方式是使用“ACTION_PICK”和geo uri。
有关更多信息,请参阅https://github.com/k3b/k3b-geoHelper/wiki/Android-Geo-howto。
仅当您安装了支持地理选择的geo-pick-aware app时才有效。
注意:您不必使用lib。您需要做的就是解码活动结果返回的geo-uri
答案 1 :(得分:0)
我找到了解决问题的方法,为了摆脱许多结果的反向地理编码并获得点击的地方,我使用以下代码
import * as file2 from './file2';
const file2Module = file2(request);