Представления не обновляются, пока не коснутся MapView

У меня есть Activity, который в основном состоит из большого MapView. Вдобавок к этому MapView у меня есть несколько других представлений, с которыми я пытаюсь взаимодействовать программно.

Моя первая проблема возникла, когда я попытался использовать AnimationListener для анимации одного из представлений поверх MapView. AnimationListener не сработает, пока я не коснусь MapView. Это было исправлено путем отказа от AnimationListener и последовательного вызова setVisibility() и другого кода. Это не идеально, но работает нормально.

Моя текущая проблема возникает при попытке обновить TextView, который находится поверх MapView. Я установил текст, но он не отображается, пока я физически не коснусь MapView. Я пробовал запрашивать фокус и другие вещи, но безрезультатно.

Кто-нибудь еще сталкивался с этим и придумал рабочее решение?


person Glendon Trullinger    schedule 02.01.2012    source источник


Ответы (2)


Вы можете позвонить map.invalidate(), чтобы обновить MapView

person Adil Soomro    schedule 02.01.2012
comment
откуда я должен вызвать этот метод? - person CraZyDroiD; 12.01.2015

вам нужно только написать приведенный ниже код, когда ваш макет создается для просмотра карты.

mapView = (MapView) findViewById(R.id.mapViewUsers);
    mapView.onCreate(bundleSavedInstanceState);
    mapView.onResume();//need to respond immediatly from mapview.
    try {
        MapsInitializer.initialize(context.getApplicationContext());
    } catch (Exception e) {
        e.printStackTrace();
    }
    mapView.getMapAsync(this);
person bansu patel    schedule 02.03.2017