我有片段:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/fragment_map_google_drawer"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/fragments_map_google"
android:layout_width="match_parent"
android:layout_height="match_parent"
class="ru.my_app.TransparentSupportMapFragment" />
</android.support.v4.widget.DrawerLayout>
和类:
public class TransparentSupportMapFragment extends SupportMapFragment {
public TransparentSupportMapFragment() {
// SupportMapFragment sp;
super();
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup view, Bundle savedInstance) {
View layout = super.onCreateView(inflater, view, savedInstance);
FrameLayout frameLayout = new FrameLayout(getActivity());
frameLayout.setBackgroundColor(getResources().getColor(android.R.color.transparent));
((ViewGroup) layout).addView(frameLayout, new ViewGroup.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
return layout;
}
}
在我的尝试中,我SherlockFragmentActivity
正在尝试获取地图片段:
map = ((TransparentSupportMapFragment) getSupportFragmentManager()
.findFragmentById((R.id.fragments_map_google))).getMap();
此代码在 2.3、带有 4.0 的 HTS One S 和其他设备上运行良好。但是在带有 4.1.4 的三星 Galaxy S III 或带有 4.1.2 的 Sonu Xperia Z 上map
是无效的。
你能告诉我为什么吗?=/