Mad*_*e_J 4 android android-mapview android-maps-v2
我已经在网上寻找解决方案,因为getMap()方法已经过时,因此,我想用getMapAsync();替换它.我搜索了谷歌以及机器人官方文件,我仍然卡住请帮忙.
我现在收到一条错误消息,指出不兼容的类型要求com.google.android.gms.GoogleMap发现无效.
public class Maps extends AppCompatActivity implements OnMapReadyCallback {
private GoogleMap googleMap;
@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.Maps);
googleMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(
R.id.mapFragment)).getMapAsync(this);
LatLng latlong = new LatLng(lat, lon);
googleMap.addMarker(new MarkerOptions().position(latlong).title(name));
googleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(latlong, 15));
}
@Override
public void onMapReady(GoogleMap googleMap) {
}
}
Run Code Online (Sandbox Code Playgroud)
下面的方法给出了错误,它表示不兼容的类型必须com.google.android.gms.GoogleMap发现无效.
googleMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(
R.id.mapFragment)).getMapAsync(this);
Run Code Online (Sandbox Code Playgroud)
getMapAsync 具有返回类型void,并且您尝试分配它
googleMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(
R.id.mapFragment)).getMapAsync(this);
Run Code Online (Sandbox Code Playgroud)
到googleMap.哪个没有多大意义.仅调用getMapAsync像
((SupportMapFragment) getSupportFragmentManager().findFragmentById(
R.id.mapFragment)).getMapAsync(this);
Run Code Online (Sandbox Code Playgroud)
并googleMap在onMapReady调用时分配.例如
@Override
public void onMapReady(GoogleMap googleMap) {
this.googleMap = googleMap;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1612 次 |
| 最近记录: |