gpt4 book ai didi

java - 从具有特定坐标的其他 Activity 打开 map Activity

转载 作者:行者123 更新时间:2023-12-02 03:15:15 25 4
gpt4 key购买 nike

我目前正在创建一个使用 Google Maps API 的应用。这就是我想做的:

我有 Activity A。 Activity A 中有一个按钮。单击按钮时,我想以特定坐标和缩放级别打开 MapsActivtiy(无 Google map 应用程序)。我在互联网上搜索了很多,但找不到答案。

请注意,我还有 Activity B、 Activity C、 Activity D 等,每个 Activity 都包含一个按钮。每个 Activity 中的每个按钮都应在不同的坐标和缩放上打开 MapsActivity。

解决方案(我无法写答案并接受它,因为问题已结束)

在 Activity A 中:

//onClick method
public void viewOnMap(View view)
{
LatLng coords = new LatLng(50.191067, 18.452964);

Bundle bundle = new Bundle();
bundle.putParcelable("coords", coords);

Intent intent = new Intent(this, MapsActivity.class);
intent.putExtras(bundle);

startActivity(intent);
}

在 map 中激活 onMapReady()

Intent intent = getIntent();
LatLng coords = intent.getParcelableExtra("coords");

//some maps code etc...

if(coords != null)
{
if (coords.equals(some_coords_1))
{
LatLng coords_zoom = new LatLng(coords.latitude, coords.longitude);

googleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(coords.latitude, coords.longitude), 17));

googleMap.moveCamera(CameraUpdateFactory.newLatLng(coords_zoom));
}

if(coords.equals(some_coords_2)
{
LatLng coords_zoom = new LatLng(coords.latitude, coords.longitude);

googleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(coords.latitude, coords.longitude), 17));

googleMap.moveCamera(CameraUpdateFactory.newLatLng(coords_zoom))

}

最佳答案

内部 Activity A:

在其他 Activity 的 Intent 中传递坐标。

 Button btnActivityB = (Button) findViewById(R.id.some_button);

btnActivityB.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(this, MapActivity.class);

LatLng latLng = new LatLng(-20.65,-40.79) //Or any other value...

intent.put("LatLng", latLng);

startActivity(intent);
}
});

内部 Activity B:

检查您是否正确收到了附加服务。然后,启动 map 后,移动相机。

Intent intent = getIntent();

if(intent.hasExtra("LatLng")){
mLatLng = intent.getParcelableExtra("LatLng");

}


public void onMapReady(){
mGoogleMap.animateCamera(CameraUpdateFactory.newLatLng(mLatLng));
}

希望对您有帮助!

关于java - 从具有特定坐标的其他 Activity 打开 map Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40410296/

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