[android] - hook into onGlobalLayout to start creating the surface and as a result create the map object
This commit is contained in:
committed by
Tobrun
parent
a28228013c
commit
906fc0421a
@@ -4,6 +4,7 @@ import android.content.Context;
|
||||
import android.graphics.Canvas;
|
||||
import android.graphics.PointF;
|
||||
import android.graphics.SurfaceTexture;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.CallSuper;
|
||||
import android.support.annotation.IntDef;
|
||||
@@ -21,6 +22,7 @@ import android.view.SurfaceView;
|
||||
import android.view.TextureView;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.ViewTreeObserver;
|
||||
import android.widget.FrameLayout;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.ZoomButtonsController;
|
||||
@@ -122,6 +124,18 @@ public class MapView extends FrameLayout {
|
||||
// add accessibility support
|
||||
setContentDescription(context.getString(R.string.mapbox_mapActionDescription));
|
||||
setWillNotDraw(false);
|
||||
|
||||
getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
|
||||
@Override
|
||||
public void onGlobalLayout() {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
|
||||
getViewTreeObserver().removeOnGlobalLayoutListener(this);
|
||||
} else {
|
||||
getViewTreeObserver().removeGlobalOnLayoutListener(this);
|
||||
}
|
||||
initialiseDrawingSurface(mapboxMapOptions.getTextureMode());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void initialiseMap() {
|
||||
@@ -553,9 +567,6 @@ public class MapView extends FrameLayout {
|
||||
if (isInEditMode()) {
|
||||
return;
|
||||
}
|
||||
if (visibility == View.VISIBLE && nativeMapView == null) {
|
||||
initialiseDrawingSurface(mapboxMapOptions.getTextureMode());
|
||||
}
|
||||
|
||||
if (mapZoomButtonController != null && nativeMapView != null) {
|
||||
mapZoomButtonController.setVisible(visibility == View.VISIBLE);
|
||||
|
||||
Reference in New Issue
Block a user