gpt4 book ai didi

android - 如何导航 map (Android Maps API v2)

转载 作者:搜寻专家 更新时间:2023-11-01 08:56:22 25 4
gpt4 key购买 nike

我的 map 即将在我的应用程序中运行。我有问题。当这个地方出现在 map 上时。我希望能够点击该地点并将其显示在适当的 Google map 应用程序中。因此,如果需要,您可以导航到该地点。

所以我有一张 map ,上面有一个标记。我想点击标记,然后在谷歌地图中找到地址。这样一来,如果人们要导航,他们只需点击它即可获得路线。

java代码如下:

public class showroommap extends Activity {
static final LatLng HAMBURG = new LatLng(53.558, 9.927);
static final LatLng KIEL = new LatLng(52.633011,-1.132913);
private GoogleMap map;



@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.showroommap);
map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map))
.getMap();
Marker hamburg = map.addMarker(new MarkerOptions().position(HAMBURG)
.title("Hamburg"));
Marker kiel = map.addMarker(new MarkerOptions()
.position(KIEL)
.title("Kiel")
.snippet("Kiel is cool")
.icon(BitmapDescriptorFactory
.fromResource(R.drawable.ic_launcher)));

//Move the camera instantly to hamburg with a zoom of 15.
map.moveCamera(CameraUpdateFactory.newLatLngZoom(HAMBURG, 15));

//Zoom in, animating the camera.
map.animateCamera(CameraUpdateFactory.zoomTo(10), 2000, null);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

}

这可能吗?

更多信息:我想单击我的应用程序中显示的标记。单击标记后,它将转到 Google map 并根据需要指向它。

最佳答案

如果我理解正确的话,你想要的是向谷歌地图应用程序发送一个带有经纬度的 Intent ,这样用户就可以导航到特定的位置。这是我在我的应用程序中实现它的方式:

Intent navigation = new Intent(Intent.ACTION_VIEW, Uri.parse("google.navigation:q=" +latlong.latitude+","+latlong.longitude));
startActivity(navigation);

latlong 是 LatLng 类型。

更新 1 - 听取对标记的点击

public class showroommap extends Activity implements onMarkerClickListener {
static final LatLng HAMBURG = new LatLng(53.558, 9.927);
static final LatLng KIEL = new LatLng(52.633011,-1.132913);
private GoogleMap map;



@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.showroommap);
map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map))
.getMap();
map.setOnMakerClickListener(this); //Register this Activity to the onMarkerClickListener
Marker hamburg = map.addMarker(new MarkerOptions().position(HAMBURG)
.title("Hamburg"));
Marker kiel = map.addMarker(new MarkerOptions()
.position(KIEL)
.title("Kiel")
.snippet("Kiel is cool")
.icon(BitmapDescriptorFactory
.fromResource(R.drawable.ic_launcher)));

//Move the camera instantly to hamburg with a zoom of 15.
map.moveCamera(CameraUpdateFactory.newLatLngZoom(HAMBURG, 15));

//Zoom in, animating the camera.
map.animateCamera(CameraUpdateFactory.zoomTo(10), 2000, null);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

@Override
public boolean onMarkerClick(final Marker marker) {

if (marker.equals(kiel))
{
//handle click here
return true;
}
else if (marker.equals(hamburg))
{
//handle click here
return true;
}
return false;
}

}

关于android - 如何导航 map (Android Maps API v2),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18594744/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com