您的位置:首页 > 移动开发 > Android开发

Android中级篇之百度地图SDK v3.5.0-FragmentMap地图框架[图解SupportMapFragment类]

2015-09-01 10:03 525 查看

创建一个基于Fragment的地图框架

SupportMapFragment

SupportMapFragment 类,管理地图生命周期。

构造器概要

构造器和说明:

SupportMapFragment()
构造函数

方法概要

[thead]
[/thead]
限定符和类型方法说明
BaiduMapgetBaiduMap()获取百度地图控制器,当执行完 onCreateView 函数之后调用,否则返回 null.
MapViewgetMapView()获取百度地图控件
static SupportMapFragmentnewInstance()创建一个MapFragment实例
static SupportMapFragmentnewInstance(BaiduMapOptions options)根据给定的百度地图选项创建一个SupportMapFragment 实例
voidonActivityCreated(Bundle savedInstanceState)*
voidonAttach(Activity activity)*
voidonConfigurationChanged(Configuration newConfig)当配置发送改变的时候会被调用
voidonCreate(Bundle savedInstanceState)*
ViewonCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)*
voidonDestroy()*
voidonDestroyView()*
voidonDetach()*
voidonPause()*
voidonResume()*
voidonSaveInstanceState(Bundle outState)*
voidonStart()*
voidonStop()*
voidonViewCreated(View view, Bundle savedInstanceState)*
voidonViewStateRestored(Bundle savedInstanceState)*

MapFragment的使用

创建
activity_fragment.xml
:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <FrameLayout
        android:id="@+id/fm_map"
        android:layout_width="match_parent"
        android:layout_height="match_parent"></FrameLayout>

</LinearLayout>




创建
MapFragmentDemo
类继承 BaseActivity

public class MapFragmentDemo extends BaseActivity {
    private SupportMapFragment map;
    private FragmentManager fm;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_fragment);
        //overlook:俯视角;zoom:缩放
        MapStatus ms = new MapStatus.Builder().overlook(-20).zoom(15).build();
        //compassEnabled是否开启指南针;zoomControlsEnabled:是否按比例缩放;
        BaiduMapOptions bo = new BaiduMapOptions().mapStatus(ms).compassEnabled(false).zoomControlsEnabled(false);

        map = SupportMapFragment.newInstance(bo);
        fm = getSupportFragmentManager();
        fm.beginTransaction().add(R.id.fm_map, map, "map_fragemnt").commit();
    }

}




运行效果图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: