gpt4 book ai didi

java - Android Google Map v2 - 通过单击 GoogleMap 上的某个位置启动新 Activity

转载 作者:行者123 更新时间:2023-12-01 13:23:58 25 4
gpt4 key购买 nike

这是我的情况:我有一个 Activity,它读取当前位置,在 TextView 中显示地址,并在 Activity 底部区域的“小”GoogleMap”上设置一个标记。在此 map 上,ScrollGestures 被禁用 - 它只是为了显示当前位置用户。

如果当前位置不正确,用户应该能够单击 map 上的某个位置,这将打开一个新 Activity ,他可以在其中将标记拖动到正确的位置。

我的问题是:如何通过单击 map 上的某个位置来启动新的 Activity 。

我尝试了这个,但我无法在 onClick 方法中放置 Intent: a link !

这是我的代码:

    private void initilizeMap() {
if (googleMap == null) {
googleMap = ((MapFragment) getFragmentManager().findFragmentById(
R.id.map)).getMap();
//googleMap.setMyLocationEnabled(true);

googleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(
lat, lng), 13));
googleMap.getUiSettings().setScrollGesturesEnabled(false);
googleMap.setOnMapClickListener(new OnMapClickListener() {

@Override
public void onMapClick(LatLng arg0) {

Intent intent2 = new Intent(this, SettingsActivity.class);
startActivity(intent2);
}
});
addMarker();

}
}
}

最佳答案

当您在调用 startActivity 时使用 this 时,您并未按应有的方式引用 Context。相反,您正在引用为 onMapClickListener 创建的匿名内部类的实例。您需要将 this 替换为 YourActivityName.thisYourFragmentName.this.getActivity() ,具体取决于外部类是什么(看起来像这是一个 fragment ...)

请更清楚地了解您下次收到的错误是什么。

关于java - Android Google Map v2 - 通过单击 GoogleMap 上的某个位置启动新 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21887036/

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