项目小总结

这次项目中,使用了不少东西,捡一些印象深入的来讲。web

1、大量地使用Android百度地图SDK进行开发,主要用到这些。api

一、地理编码(正向编码和反向编码):浏览器

接口、类微信

com.baidu.mapapi.search.geocode.OnGetGeoCoderResultListener
com.baidu.mapapi.search.geocode.GeoCoder
com.baidu.mapapi.search.geocode.GeoCodeResult
com.baidu.mapapi.search.geocode.GeoCodeOption
com.baidu.mapapi.search.geocode.ReverseGeoCodeResult
com.baidu.mapapi.search.geocode.ReverseGeoCodeOption

初始化、监听ide

= GeoCoder.().setOnGetGeoCodeResultListener()

实现方法编码

(GeoCodeResult result) {
    (result == || result.!= SearchResult.ERRORNO.) {
        Toast.(getActivity()Toast.)
                .show()}
    .clear().addOverlay(MarkerOptions().position(result.getLocation()).icon(BitmapDescriptorFactory.(R.mipmap.))).setMapStatus(MapStatusUpdateFactory.(result
            .getLocation()))= result.getLocation().= result.getLocation().((.getInt())%!=) {
        Toast.(getActivity()+ + + + Toast.).show()}
}

(ReverseGeoCodeResult result) {
    (result == || result.!= SearchResult.ERRORNO.) {
        Toast.(getActivity()Toast.)
                .show()}
    .clear().addOverlay(MarkerOptions().position(result.getLocation()).icon(BitmapDescriptorFactory.(R.mipmap.))).setMapStatus(MapStatusUpdateFactory.(result
            .getLocation()))= result.getAddress().setText()= result.getLocation().= result.getLocation().((.getInt())%!=) {
        Toast.(getActivity()+ + + + Toast.).show()}
}


二、隐藏百度地图SDK自带的放大缩小按钮,而且设置自定义的放大缩小按钮
url

(MapView mapView) {
    childCount = mapView.getChildCount()View zoom = (i = i < childCounti++) {
        View child = mapView.getChildAt(i)(child ZoomControls) {
            zoom = child}
    }
    zoom.setVisibility(View.)}
.setOnClickListener(View.OnClickListener() {
    (View v) {
        zoomLevel = .getMapStatus().(zoomLevel <= ) {
            .setMapStatus(MapStatusUpdateFactory.()).setEnabled()} {
            .setEnabled()Toast.(getActivity()Toast.).show()}
    }
}).setOnClickListener(View.OnClickListener() {
    (View v) {
        zoomLevel = .getMapStatus().(zoomLevel > ) {
            .setMapStatus(MapStatusUpdateFactory.()).setEnabled()} {
            .setEnabled()Toast.(getActivity()Toast.).show()}
    }
})

三、使用建议搜索
code

接口、类接口

com.baidu.mapapi.search.sug.OnGetSuggestionResultListener
com.baidu.mapapi.search.sug.SuggestionSearch
com.baidu.mapapi.search.sug.SuggestionResult
com.baidu.mapapi.search.sug.SuggestionSearchOption

建议搜索入口:
ip

.requestSuggestion((SuggestionSearchOption())
                .keyword(s.toString()).city(s.toString()))

回调方法:

onGetSuggestionResult

三、路线规划

接口、类

com.baidu.mapapi.search.route.OnGetRoutePlanResultListener
com.baidu.mapapi.search.core.RouteLine
com.baidu.mapapi.search.core.SearchResult
com.baidu.mapapi.search.route.DrivingRouteLine
com.baidu.mapapi.search.route.DrivingRoutePlanOption
com.baidu.mapapi.search.route.DrivingRouteResult
com.baidu.mapapi.search.route.PlanNode
com.baidu.mapapi.search.route.RoutePlanSearch
com.baidu.mapapi.search.route.TransitRouteLine
com.baidu.mapapi.search.route.TransitRoutePlanOption
com.baidu.mapapi.search.route.TransitRouteResult
com.baidu.mapapi.search.route.WalkingRouteLine
com.baidu.mapapi.search.route.WalkingRoutePlanOption
com.baidu.mapapi.search.route.WalkingRouteResult

路线规划分为驾车规划、公交换乘规划、步行规划

主要仍是两步:1、规划入口;2、方法回调

.drivingSearch((DrivingRoutePlanOption())
        .from(stNode)
        .to(enNode))
.transitSearch((TransitRoutePlanOption())
        .from(stNode)
        .city()
        .to(enNode))
.walkingSearch((WalkingRoutePlanOption())
        .from(stNode)
        .to(enNode))
onGetWalkingRouteResult
onGetTransitRouteResult
onGetDrivingRouteResult

固然,若是须要改变起点和终点的图标,还要定制RouteOverly

2、使用ShareSdk进行社会化分享

使用ShareSdk进行社会化分享,分享到新浪微博、QQ空间、微信好友、微信朋友圈、QQ、信息。

3、

SharedPreferences

的使用

4、SqLite的各类灵活使用


5、WebView的使用

一、获取

WebView webView = (WebView) findViewById(R.id.webView);

二、webView加载web资源或者本地资源

webView.loadUrl("http://www.baidu.com");

三、覆盖webView默认使用第三方或系统默认浏览器打开网页的行为,使网页webView打开

webView.setWebViewClient(new WebViewClient(){

          public boolean shouldOverrideUrlLoading(WebView view, String url) {

                         view.loadUrl(url);

                         return true;//返回值是true时控制WebView打开,为false调用系统浏览器或第三方浏览器打开

          }

      });     

}

等等


6、还有不少比较碎但又很重要的东西,这里就不说了。

相关文章
相关标签/搜索