zoukankan      html  css  js  c++  java
  • 3.12 获取地址定位

    package com.example.mywork;
    
    import androidx.appcompat.app.AppCompatActivity;
    
    import android.content.Intent;
    import android.os.Bundle;
    import android.view.View;
    import android.view.Window;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.Toast;
    import com.baidu.location.BDAbstractLocationListener;
    import com.baidu.location.BDLocation;
    import com.baidu.location.LocationClient;
    import com.baidu.location.LocationClientOption;
    import com.baidu.mapapi.SDKInitializer;
    import com.baidu.mapapi.map.BaiduMap;
    import com.baidu.mapapi.map.MapView;
    
    public class MainActivity extends AppCompatActivity {
        private MapView mMapView = null;
        private BaiduMap bdMap;
        private Button mBtnLogin;
        private MyLocationListener   myListener=new MyLocationListener();
        private LocationClient  mLocationClient=null;
        private EditText  text_main_address;
        @Override
    
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            requestWindowFeature(Window.FEATURE_NO_TITLE);
            SDKInitializer.initialize(getApplicationContext());
            setContentView(R.layout.activity_main);
            //init();
    
            mBtnLogin = findViewById(R.id.btn_login);
            mBtnLogin.setOnClickListener(new View.OnClickListener()
            {
                @Override
                public void onClick(View v){
                    Toast.makeText(MainActivity.this,"录入成功!",Toast.LENGTH_SHORT).show();
                }
            });
        }
    
        public class MyLocationListener extends BDAbstractLocationListener {
    
            @Override
            public void onReceiveLocation(BDLocation location){
    
                double latitude = location.getLatitude();    //获取纬度信息
                double longitude = location.getLongitude();    //获取经度信息
                float radius = location.getRadius();    //获取定位精度,默认值为0.0f
                String coorType = location.getCoorType();
                //获取经纬度坐标类型,以LocationClientOption中设置过的坐标类型为准
                int errorCode = location.getLocType();
                //获取定位类型、定位错误返回码,具体信息可参照类参考中BDLocation类中的说明
                String addr = location.getAddrStr();    //获取详细地址信息
                String country = location.getCountry();    //获取国家
                String province = location.getProvince();    //获取省份
                String city = location.getCity();    //获取城市
                String district = location.getDistrict();    //获取区县
                String street = location.getStreet();    //获取街道信息
                String adcode = location.getAdCode();    //获取adcode
                String town = location.getTown();    //获取乡镇信息
                mLocationClient.start();
                text_main_address=findViewById(R.id.main_address);
                text_main_address.setText(addr+country+province+city+district+street);
            }
        }
    
        public void autoAddress(View view)
        {
            //LocationClient = new LocationClient(this);
            //LocationClientOption option = locationClient.getLocOption();
            mLocationClient = new LocationClient(getApplicationContext());
            //声明LocationClient类
            mLocationClient.registerLocationListener(myListener);
            LocationClientOption option = new LocationClientOption();
            option.setIsNeedAddress(true);
            option.setNeedNewVersionRgc(true);
            option.setAddrType("all"); //加上这个配置后才可以取到详细地址信息
            mLocationClient.setLocOption(option);
            //注册监听函数
            mLocationClient.start();
        }
    
        /**
         * 初始化方法
         */
        //private void init() {
    
            //mMapView = findViewById(R.id.bmapview);
           // bdMap = mMapView.getMap();
    //普通地图
            //bdMap.setMapType(BaiduMap.MAP_TYPE_NORMAL);
        //}
        //@Override
        //protected void onResume() {
        //    super.onResume();
        //    mMapView.onResume();
        //}
        //@Override
        //protected void onPause() {
        //    super.onPause();
        //   mMapView.onPause();
        //}
        //@Override
        //protected void onDestroy() {
        //   mMapView.onDestroy();
        //   mMapView = null;
        //   super.onDestroy();
        // }
    }
  • 相关阅读:
    [转]Apache与Tomcat的关系
    [转]学习object-c,补习一下指针
    [转]深度解析苹果成功的六大原因——公众类产品学习的榜样
    datetimepicker日期时间选择器
    缓缓回到顶部效果的实现
    bootstrap4实现点击标签展示对应的内容
    禁止页面内容滚动( 禁用 ctrl
    UI中的暗黑模式
    如何通过空状态留住用户
    交互设计常用原则和定律
  • 原文地址:https://www.cnblogs.com/dty602511/p/14913689.html
Copyright © 2011-2022 走看看