我实际上是想在使用Android Studio构建的应用中显示地图。
我使用库“ mapsforge”(https://github.com/mapsforge)
创建地图视图实例时出现错误。
我集成了以下库:
implementation 'androidx.appcompat:appcompat:1.0.2'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'org.mapsforge:mapsforge-core:[0.11.0]'
implementation 'org.mapsforge:mapsforge-map:[0.11.0]'
implementation 'org.mapsforge:mapsforge-map-reader:[0.11.0]'
implementation 'org.mapsforge:mapsforge-themes:[0.11.0]'
implementation 'net.sf.kxml:kxml2:2.3.0'
在MainActivity中:
import org.mapsforge.map.view.MapView;
我的整个OnCreate:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
AndroidGraphicFactory.createInstance(getApplication());
mapView = new MapView(this);
mapView.setClickable(true);
mapView.getMapScaleBar().setVisible(false);
mapView.setBuiltInZoomControls(false);
mapView.setZoomLevelMin((byte) 2);
mapView.setZoomLevelMax((byte) 10);
mapView.setZoomLevel((byte) 2);
mapView.getModel().displayModel.setBackgroundColor(ContextCompat.getColor(t his, R.color.mapBackground));
}
}
抛出:
MapView是抽象的-无法实例化。
Java新手
提前致谢
最佳答案
要在Android中使用MapView,您需要将Android实现添加到gradle依赖项中:
implementation 'org.mapsforge:mapsforge-map-android:[CURRENT-VERSION]'
implementation 'com.caverock:androidsvg:1.4'
请参见其存储库中的集成指南:https://github.com/mapsforge/mapsforge/blob/master/docs/Integration.md