没有硬件加速关闭,MapView不可见

时间:2013-01-19 12:12:14

标签: android background android-mapview hardware-acceleration

我正在使用Google Maps Android API v2来展示小MapView。但是,为了实现我的应用程序的功能,我需要关闭此视图的硬件加速。我是这样做的:

的onCreate:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    GoogleMapOptions options = new GoogleMapOptions();
    options.zoomControlsEnabled(false);
    options.rotateGesturesEnabled(false);
    options.scrollGesturesEnabled(false);
    options.tiltGesturesEnabled(false);
    options.zoomGesturesEnabled(false);

    MapView mv = new MapView(this, options);
    mv.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
    mv.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, 200));

    this.addView(mv);

    mv.onCreate(savedInstanceState);
}

问题是地图不可见!可以看到视图应该在那里,因为下面的所有视图都被向下推,但它不可见!

现在出现了奇怪的部分:
如果我将此行添加到我的onCreate方法,则地图变为可见

    mv.setBackgroundColor(Color.GREEN);

为什么这突然起作用?我希望我的背景透明,但添加Color.TRANSPARENT作为背景会让地图再次消失:(

0 个答案:

没有答案