【发布时间】:2012-11-29 19:12:04
【问题描述】:
xml:
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent"
class="com.google.android.gms.maps.SupportMapFragment"/>
在常规片段中是这样的:
mFragment = (mFragment) (getSupportFragmentManager().findFragmentById(R.id.mFragment));
mFragment.getView().setVisibility(View.INVISIBLE);
在谷歌地图片段中:
mMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.mapFragment)).getMap();
但是我怎样才能逐步设置地图片段的可见性?
不能像其他片段那样做。
【问题讨论】:
-
您可以尝试将
mMap转换为Fragment并执行相同的getView().setVisibility(View.INVISIBLE),因为SupportMapFragment仍然是一个片段。 -
无法从 GoogleMap 投射到 Fragment
-
您是否尝试使用
getSupportFragmentManager().beginTransacton().hide(mMap).commit()或getSupportFragmentManager().beginTransacton().detach(mMap).commit()? -
试过了。但是没有用。只要 map 声明如下:
private GoogleMap mMap;我得到:“FragmentTransaction 类型中的方法 hide/detach(Fragment) 不适用于参数 (GoogleMap)” -
对不起,我的错误,试试这个:
getSupportFragmentManager().beginTransacton().hide(getSupportFragmentManager().findFragmentById(R.id.mapFragment)).commit()或getSupportFragmentManager().findFragmentById(R.id.mapFragment).getView().setVisibility(View.INVISIBLE);
标签: android google-maps android-fragments visibility