我想在加载地图后添加动画。 我的问题是,我不知道地图何时准备好了。 如果我在“setUpMapIfNeeded”函数后启动动画, 我看到动画,但是白色的地图内容。
是否有任何函数告诉我何时加载了地图内容?
答案 0 :(得分:0)
我遇到了类似的问题,并以onViewCreated
为子类MapFragment并调用Callback接口结束:
public class TLMapFragment extends SupportMapFragment {
private TLMapCallBack callback;
public interface TLMapCallBack{
public void onMapCreated();
}
public static TLMapFragment newInstance(TLMapCallBack callback){
TLMapFragment fragment = new TLMapFragment();
fragment.callback = callback;
return fragment;
}
public TLMapFragment(){
callback = null;
}
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
Log.v(TAG, "onViewCreated");
initMap();
if(callback != null)
callback.onMapCreated();
}
private void initMap(){
//init map here
}
}
答案 1 :(得分:0)
是的,这是一个关于地图片段的onCreateview示例
@Override
public View onCreateView(LayoutInflater arg0, ViewGroup arg1, Bundle arg2) {
View v = super.onCreateView(arg0, arg1, arg2);
// init map
mGoogleMap = getMap();
// map loaded
mGoogleMap.setOnMapLoadedCallback(new GoogleMap.OnMapLoadedCallback() {
@Override
public void onMapLoaded() {
Log.d(LOG_CATEGORY, "map loaded");
// do other stuff
}
});
return v;
}