【发布时间】:2017-03-04 02:30:48
【问题描述】:
我有这个 EventActivity 我有一个带有标记的地图:
public class EventActivity extends AppCompatActivity implements OnMapReadyCallback {
private double latitude;
private double longitude;
private GoogleMap eventMap;
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_event);
// Declares map fragment.
SupportMapFragment eventMapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.activity_event_map);
eventMapFragment.getMapAsync(this);
// Gets latitude and longitude values from database.
// (things happen here and I get the values correctly)
latitude = 12.4567785
longitude = 25.7773665
}
@Override
public void onMapReady(GoogleMap googleMap) {
eventMap = googleMap;
// Sets map position.
LatLng position = new LatLng(latitude, longitude);
eventMap.addMarker(new MarkerOptions().position(position));
eventMap.moveCamera(CameraUpdateFactory.newLatLng(position));
}
}
在 OnCreate() 上,我正确获得了双精度值对。我什至可以敬酒,它会向他们展示。
问题是,当我想将它们设置为我的地图标记在 OnMapReady() 上的位置时,它什么也得不到或 null。
如何正确地将值从 OnCreate() 传递到 OnMapReady()?
编辑:我使用 Firebase 作为我的数据库。
【问题讨论】:
标签: android google-maps firebase google-maps-markers