Cha*_*ake 4 android dialog google-maps-android-api-2 supportmapfragment
我需要嵌入SupportMapFragment一个Dialog.这是我能想到的最好的:
public class SupportMapFragmentDialog extends DialogFragment {
private final SupportMapFragment fragment;
public SupportMapFragmentDialog() {
fragment = new SupportMapFragment();
setTargetFragment(fragment, 1);
}
@Override
public View onCreateView(final LayoutInflater inflater,
final ViewGroup container, final Bundle savedInstanceState) {
return fragment.onCreateView(inflater, container, savedInstanceState);
}
public SupportMapFragment getFragment() {
return fragment;
}
}
Run Code Online (Sandbox Code Playgroud)
但是,当我这样称呼时:
final SupportMapFragmentDialog dialog = new SupportMapFragmentDialog();
dialog.show(getSupportFragmentManager(), "Historico");
Run Code Online (Sandbox Code Playgroud)
我明白了:

如何在Dialog上查看地图?
该应用程序有另一个SupportMapFragment工作奇迹,所以它与配置没有任何关系.
小智 12
您可以在对话框中显示地图片段
public class DialogMapFragment extends DialogFragment {
private SupportMapFragment fragment;
public DialogMapFragment() {
fragment = new SupportMapFragment();
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.mapdialog, container, false);
getDialog().setTitle("");
FragmentTransaction transaction = getChildFragmentManager().beginTransaction();
transaction.add(R.id.mapView, fragment).commit();
return view;
}
public SupportMapFragment getFragment() {
return fragment;
}
}
Run Code Online (Sandbox Code Playgroud)
R.layout.mapdialog:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="0dp" >
<FrameLayout
android:id="@+id/mapView"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</FrameLayout>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5192 次 |
| 最近记录: |