我们在这里使用地图android SDK。我们根本不使用布局。所以我们在这里有关于如何使用它的资料。
首先,我们需要将地图放在View(或RelativeLayout)中。
其次,当我们尝试使用以下代码启动地图时:
MapFragment map_fragment = null;
//...
map_fragment = new MapFragment();
// how do we add the map_fragment as a "sub-view" of another View/RelativeLayout
map_fragment(new OnEngineInitListener() {
@Override
public void onEngineInitializationCompleted(OnEngineInitListener.Error error) {
if (error == OnEngineInitListener.Error.NONE) {
map_fragment.getMapGesture().
addOnGestureListener(gestureListener);
// throws errors at this line
} else {
}
//...
}
}
它会抛出错误:
ERROR: Cannot initialize Map Fragment,UNKNOWN,Unknown error occurred.,java.lang.NullPointerException: Cannot initialize with a null Context
I: at com.nokia.maps.ee.a(Preconditions.java:19)
I: at com.nokia.maps.MapsEngine.b(MapsEngine.java:355)
I: at com.nokia.maps.MapsEngine.a(MapsEngine.java:343)
I: at com.here.android.mpa.common.MapEngine.init(MapEngine.java:129)
I: at com.nokia.maps.br.a(MapFragmentImpl.java:126)
I: at com.here.android.mpa.mapping.MapFragment.init(MapFragment.java:108)
答案 0 :(得分:0)
在创建应用程序上下文之前,您似乎正在调用init代码?地图片段是一个片段,需要先添加到片段管理器中才能使用它。
动态添加片段的示例堆栈溢出答案将是以下link。