2013-04-10 4 views
2

Я хотел бы добавить анимацию после загрузки карты. Моя проблема в том, что я не знаю, когда карта готова. Если я запускаю анимацию после моей «setUpMapIfNeeded» -функции, я вижу анимацию, но без содержания карты.Android Google Maps API V2 - Анимация после начала карты

Есть ли какая-либо функция, которая сообщает мне, когда загружается содержимое карты?

ответ

0

У меня была аналогичная проблема, и закончилась подклассов MapFragment и вызова интерфейса обратного вызова в onViewCreated:

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 
} 
} 
+0

Я не тихо понимаю ваш код. Я использую FragmentActivity, возможно ли реализовать ваше решение? есть ли другие способы? – user1258938

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; 
    } 
Смежные вопросы