ScrollView の子である LinearLayout 内にマップ フラグメントを配置しました。下にスクロールしてマップを表示すると、マップが画面に黒いパッチを残します。ICS の前のデバイスでこの問題に直面しています。ジンジャーブレッド。誰かが同様の問題に直面しましたか?
質問する
397 次
1 に答える
1
私は解決策を手に入れました!!
クラス MyMapFragment を作成します
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.SurfaceView;
import android.view.View;
import android.view.ViewGroup;
import com.google.android.gms.maps.SupportMapFragment;
public class MyMapFragment extends SupportMapFragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = super.onCreateView(inflater, container, savedInstanceState);
setMapTransparent((ViewGroup) view);
return view;
};
private void setMapTransparent(ViewGroup group) {
int childCount = group.getChildCount();
for (int i = 0; i < childCount; i++) {
View child = group.getChildAt(i);
if (child instanceof ViewGroup) {
setMapTransparent((ViewGroup) child);
} else if (child instanceof SurfaceView) {
child.setBackgroundColor(0x00000000);
}
}
}
}
GoogleMap の初期化
map = ((MyMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.mapView)).getMap();
内部xml
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="250dp"
android:layout_marginBottom="15dp"
android:background="@drawable/mapouter" >
<fragment
xmlns:map="http://schemas.android.com/apk/res-auto"
android:id="@+id/mapView"
android:name="com.example.MyMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
于 2013-05-16T14:18:27.687 に答える