精华内容
下载资源
问答
  • 怎么调定位位置
    千次阅读
    2020-01-15 21:36:14
    1. 在需要进行点击的页面中,location.wxml,写上点击事件,以及绑定的数据,代码如下所示:
    <view class="content" bindtap="handleAddressClick">{{ address }}</view>
    
    1. 在相应的js文件中,location.js,在data中,定义之前绑定的数据,address,给上一个默认初始值,代码如下所示:
    data: {
       address: "点击选择定位"
    }
    
    1. location.js文件中,定义的绑定的事件函数andleAddressClick(),在这个函数中,调用打开地图选择位置的APIwx.chooseLocation(),代码如下所示:
    handleAddressClick() {
       wx.chooseLocation({
         success: this.handleChooseLocationSuccess.bind(this)
       })
    }
    
    1. location.js文件中,再定义选择位置成功后的回调函数handleChooseLocationSuccess(),在这个函数里面通过this.setData()的方法去修改位置的信息,将选择的位置信息赋值给data里面的位置信息,响应到页面当中去,这样就实现了点击后地图选择定位位置,代码如下所示:
     handleChooseLocationSuccess(res) {
       this.setData({
         address: res.address
       })
     }
    
    更多相关内容
  • 在开发移动端 web 或者webapp时,使用百度地图 API 的过程中,经常需要通过手机定位获取当前位置并在地图上居中显示出来,这就需要用到html5的地理定位功能。 复制代码代码如下: navigator.geolocation....
  • 在开发移动端 web或者webapp时使用百度地图 API的过程中经常需要通过手机 定位获取当前位置并在地图上居中显示出来这就需要用到 html5的地理定位功能 代码如下 navigator.geolocation.getCurrentPosition(callback;...
  • 本demo 集成了高德地图定位和POI搜索附近位置列表功能,类似于朋友圈当前位置获取;;;:::::
  • 其中onSuccess是获取当前位置信息成功时执行的回函数,onError是获取当前位置信息失败时所执行的回函数,options是一些可选熟悉列表。其中第二和第三个参数为可选属性。 在onSuccess回函数中,用到了参数...
  • 在开发移动端 web 或者 webapp 时使用百度地图 API 的过程中 经常需要通过手机 定位获取当前位置并在地图上居中显示出来这就需要用到 html5 的地理定位功能 代码如下 : navigator.geolocation.getCurrentPosition...
  • 工作区内由单片机AT89S52控制DS18B20采集环境温度,当温度达到设定阈值时,AT89S52单片机与ATmega16单片机交换信息,ATmega16控制热释红外传感器进行人群位置定位,从而通过PWM控制电机和舵机做相应动作。
  • 地图实时定位我的位置

    千次阅读 2021-03-05 20:09:47
    首先需要显示地图,请看我的另一篇文章然后实时获取定位信息中的经度和纬度,然后启动定位功能标记我的位置开启定位图层 setMyLocationEnabled(true)构造定位数据 MyLocationData对象设置定位数据,并配置定位图层的...

    首先需要显示地图,请看我的另一篇文章

    然后实时获取定位信息中的经度和纬度,

    然后启动定位功能标记我的位置

    开启定位图层 setMyLocationEnabled(true)

    构造定位数据 MyLocationData对象

    设置定位数据,并配置定位图层的信息

    关闭定位图层  setMyLocationEnabled(false)

    Activity中的代码如下:

    private MapView mMapView;

    public final static String TAG = "Location";

    private BaiduMap mBaiduMap; //定义百度地图对象

    //记录是否第一次定位,然后在locationUpdates()方法中设置逻辑

    private boolean isFirstLoc = true;

    //当前定位模式

    private MyLocationConfiguration.LocationMode locationMode;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    //初始化地图SDK,

    //需要在setContentView(R.layout.activity_main);上面

    SDKInitializer.initialize(getApplicationContext());

    setContentView(R.layout.activity_main);

    initMap(); //初始化地图

    locationProvice();//位置服务

    }

    private void initMap() {

    //获取地图控件引用

    mMapView = findViewById(R.id.bmapView);

    mBaiduMap = mMapView.getMap(); //获取百度地图对象

    }

    /**

    * 初始化位置服务,获取当前所在位置

    */

    private void locationProvice() {

    //获取位置服务

    LocationManager locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);

    //获取最佳的LocationProvider

    //创建一个过滤条件对象

    //需要加入权限

    Criteria criteria = new Criteria();

    //设置为不收费的

    criteria.setCostAllowed(false);

    //使用精度最准确的

    criteria.setAccuracy(Criteria.ACCURACY_FINE);

    //设置中等耗电量

    criteria.setPowerRequirement(Criteria.POWER_MEDIUM);

    if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {

    // TODO: Consider calling

    // ActivityCompat#requestPermissions

    // here to request the missing permissions, and then overriding

    // public void onRequestPermissionsResult(int requestCode, String[] permissions,

    // int[] grantResults)

    // to handle the case where the user grants the permission. See the documentation

    // for ActivityCompat#requestPermissions for more details.

    return;

    }

    locationManager.requestLocationUpdates(

    LocationManager.NETWORK_PROVIDER, //指定位置提供者

    1000, //间隔时间

    1, //位置间隔1米

    new LocationListener() {//监听GPS定位信息是否改变

    @Override

    public void onLocationChanged(Location location) {

    //GPS信息发生改变时,回调

    locationUpdates(location);

    }

    @Override

    public void onStatusChanged(String provider, int status, Bundle extras) {

    //GPS状态发生改变时,回调

    }

    @Override

    public void onProviderEnabled(String provider) {

    //定位提供者启动时回调

    }

    @Override

    public void onProviderDisabled(String provider) {

    //定位提供者关闭时回调

    }

    }

    );

    //获取最新的定位信息

    Location location = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);

    //将最新的定位信息传递给locationUpdates()方法

    locationUpdates(location);

    }

    public void locationUpdates(Location location) {

    if (location != null) {

    LatLng ll = new LatLng(location.getLatitude(), location.getLongitude());

    //创建一个字符串构建器,用于记录位置信息

    StringBuilder stringBuilder = new StringBuilder();

    stringBuilder.append("您的位置是: \n");

    stringBuilder.append("经度: ");

    stringBuilder.append(location.getLongitude());

    stringBuilder.append("\n 纬度:");

    stringBuilder.append(location.getLatitude());

    Log.i(TAG, stringBuilder.toString());

    if (isFirstLoc) {

    //更新坐标位置

    MapStatusUpdate update = MapStatusUpdateFactory.newLatLng(ll);

    //设置地图位置

    mBaiduMap.animateMapStatus(update);

    isFirstLoc=false;

    }

    //构造定位数据

    MyLocationData locationData = new MyLocationData.Builder()

    .accuracy(location.getAccuracy()) //设置精度

    .direction(0) //设置方向信息

    .latitude(location.getLatitude()) //设置纬度坐标

    .longitude(location.getLongitude()) //设置纬度坐标

    .build();

    mBaiduMap.setMyLocationData(locationData);

    //设置自定义图标

    BitmapDescriptor bitmapDescriptor = BitmapDescriptorFactory.fromResource(R.drawable.icon_geo);

    //设置定位模式

    locationMode = MyLocationConfiguration.LocationMode.NORMAL;

    //设置构造方式

    MyLocationConfiguration configuration = new MyLocationConfiguration(

    locationMode,true,bitmapDescriptor

    );

    //显示定位图标

    mBaiduMap.setMyLocationConfiguration(configuration);

    //然后再onStart()方法和onStop中添加

    //开启定位图层

    //mBaiduMap.setMyLocationEnabled(true);

    //停止定位图层

    // mBaiduMap.setMyLocationEnabled(false);

    } else {

    Log.i(TAG ,"没有获取到位置信息");

    }

    }

    @Override

    protected void onStart() {

    super.onStart();

    //开启定位图层

    mBaiduMap.setMyLocationEnabled(true);

    }

    @Override

    protected void onStop() {

    super.onStop();

    mBaiduMap.setMyLocationEnabled(false);

    }

    @Override

    protected void onResume() {

    super.onResume();

    mMapView.onResume();

    }

    @Override

    protected void onPause() {

    super.onPause();

    mMapView.onPause();

    }

    @Override

    protected void onDestroy() {

    super.onDestroy();

    mMapView.onDestroy();

    mMapView = null;

    }

    展开全文
  • JavaScript 滚动条定位指定位置

    千次阅读 2021-01-14 14:56:40
    可能会根据需要将滚动条定位到某处,蚂蚁部落的侧栏导航就具有类似功能。下面通过代码实例简单演示一下简单定位效果:[HTML] 纯文本查看 复制代码运行代码蚂蚁部落#box{width: 150px;height: 80px;border: 2px ...

    当子元素尺寸超过父元素的时候能够出现滚动条。

    可能会根据需要将滚动条定位到某处,蚂蚁部落的侧栏导航就具有类似功能。

    下面通过代码实例简单演示一下简单定位效果:[HTML] 纯文本查看 复制代码运行代码

    蚂蚁部落

    #box{

    width: 150px;

    height: 80px;

    border: 2px dotted green;

    overflow: auto;

    position: relative;

    }

    ul {

    list-style-type: none;

    font-size :12px;

    margin: 0px;

    }

    window.onload =()=> {

    let oBox = document.getElementById("box");

    let lis= oBox.getElementsByTagName("li");

    lis[3].style.color = "red";

    let top = lis[3].offsetTop;

    oBox.scrollTop = top;

    }

    • 蚂蚁部落一
    • 蚂蚁部落二
    • 蚂蚁部落三
    • 蚂蚁部落四
    • 蚂蚁部落五
    • 蚂蚁部落六
    • 蚂蚁部落七
    • 蚂蚁部落八
    • 蚂蚁部落九
    • 蚂蚁部落十

    代码运行效果截图如下:

    代码分析如下:

    (1).上述代码可以将滚动条定位到第四个 li 元素。

    (2).其实就是内容向上规定指定距离,此距离是第四个 li 默认情况下距离 box顶部的距离。

    (3).let top = lis[3].offsetTop,通过 offsetTop 属性获取这个距离。

    (4).box 需要是定位元素。

    (5).oBox.scrollTop = top 向上滚动这个尺寸即可。

    相关阅读:

    (1).offsetTop 参阅 JavaScript offsetTop 一章节。

    (2).scrollTop 参阅 JavaScript scrollTop 一章节。

    展开全文
  • HTML网页定位

    需求描述

    在HTML页面获取当前定位经纬度

    代码

    优先使用地理位置定位,定位失败时取百度定位,否则使用高德IP定位:

    <!-- 引入百度地图API(需申请百度地图开发者账号,创建秘钥使用) -->
    <script type="text/javascript" src="https://api.map.baidu.com/api?v=2.0&amp;ak=您的密钥"></script>
    
    // 判断字符串是否为空
    function isStrEmpty(str) {
        return "undefined" === typeof str || str === null || str === "undefined" || str === "null" || str.toString().trim().length < 1;
    }
    
    var current_lng, current_lat; // 当前定位经度,当前定位纬度
    var getCurrentPosition = function () {
        console.log("定位中.."); // 此处可在页面增加定位加载效果提示用户
        if (navigator.geolocation) { // 浏览器支持定位
            navigator.geolocation.watchPosition( // 监听定位变更
                function (pos) { // 成功回调函数,接受一个地理位置的对象作为参数(网页需配置https)
                    current_lng = pos.coords.longitude;
                    current_lat = pos.coords.latitude;
                    console.log("地理位置定位: " + current_lng + "," + current_lat); // 注意:此处经纬度为wgs84坐标
                    console.log("定位成功!"); // 此处可在页面增加定位成功提示
                },
                function (error) { // 出错时取百度地图定位(需引入引入百度地图API)
                    console.log("需开启定位权限!"); // 此处可在页面增加提示
                    var geolocation = new BMap.Geolocation();
                    geolocation.getCurrentPosition(function (r) {
                        if (this.getStatus() == BMAP_STATUS_SUCCESS) {
                            current_lng = r.point.lng;
                            current_lat = r.point.lat;
                            console.log("百度地图定位: " + current_lng + "," + current_lat); // 注意:此处经纬度为百度坐标
                            console.log("定位成功!"); // 此处可在页面增加定位成功提示
                        }
                    });
                },
                {
                    enableHighAccuracy: true, // 是否获取高精度结果
                    timeout: 1000, // 超时,毫秒
                    maximumAge: 0 // 可以接受多少毫秒的缓存位置
                });
        } else { // 高德IP定位(精度低)
            console.log("您的浏览器不支持定位..");
            $.ajax({ // 需引入jQuery
                type: "POST",
                // 调用高德IP定位(需申请高德地图开发者账号,创建秘钥使用)
                url: "https://restapi.amap.com/v3/ip?key=您的秘钥",
                async: true, // 默认:异步请求
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                data: "",
                success: function (data) {
                    // console.log(data, JSON.stringify(data));
                    if ("rectangle" in data && !isStrEmpty(data.rectangle)) { // data.rectangle:IP所在经纬度范围
                        // data.rectangle:"116.0119343,39.66127144;116.7829835,40.2164962"
                        var locList = data.rectangle.split(";");
                        var lngSum = 0, latSum = 0;
                        for (var i in locList) {
                            var locInfos = locList[i].split(",");
                            lngSum = parseFloat(lngSum) + parseFloat(locInfos[0]);
                            latSum = parseFloat(latSum) + parseFloat(locInfos[1]);
                        }
                        // 取返回经纬度的平均值,保留6位小数
                        current_lng = parseFloat(lngSum / locList.length).toFixed(6);
                        current_lat = parseFloat(latSum / locList.length).toFixed(6);
                        console.log("高德地图定位: " + current_lng + "," + current_lat); // 定位误差巨大..经纬度坐标不同导致的偏差可忽略不计
                        console.log("定位成功!"); // 此处可在页面增加定位成功提示
                    }
                }
            });
        }
    };
    
    

    注意

    ①要在HTML网页获取到较为精确的定位,需要给网页配置HTTPS,以及提示用户打开定位;
    ②使用百度/高德定位需申请相应的开发者账号,创建秘钥使用;
    ③每种方式取到的经纬度坐标不同,为了减少误差,需根据具体需求进行坐标转换

    参考文档

    [1] 地理位置定位(navigator.geolocation)
    [2] 百度地图定位(BMap.Geolocation)
    [3] 高德IP定位
    [4] jQuery.ajax
    [5] 配置HTTPS
    [6] 坐标转换

    展开全文
  • 腾讯位置 - 服务端IP定位(结尾附视频)

    千次阅读 多人点赞 2021-01-16 23:11:40
    本文关键字:腾讯位置定位、服务端、IP定位、使用教程。通过获取客户端或终端设备IP地址来获取其当前所在地理位置,可以精确到市级,常用于显示当地城市天气预报、初始化用户城市等非精确定位场景。
  • 国外非常流行的步进电机STM32控制代码,S型加减速,启动加速和停止减速可以不同,完成满足各种不同需要,代码中可以随时获取电机已走脉冲(实际就是当前位置),类似PLC中的脉冲计数器,代码的执行效率比DMA方式的还...
  • Android 腾讯地图 选点定位,仿微信发送位置

    千次阅读 热门讨论 2019-03-29 15:10:27
    不需要集成定位、地图,然后标记 回等繁琐的操作,你只需要一个webview,使用腾讯地图的地图选点组件即可。 申请key 接入指引 使用地图选点组件 调用方式一: 通过iframe内嵌调用,地图选点组件的页面会根据...
  • 1.添加权限--6.0之后要动态获取,下面会说2.直接上代码,不多说,代码中注释很详细。private static final int BAIDU_READ_PHONE_STATE = 100;...//开启GPS权限/*** 检测GPS、位置权限是否开启*/public void showGPS...
  • arcgis三工具箱.zip

    2020-05-15 10:17:44
    arcgis三工具箱,包括图斑节点自动修复,处理下发县界与地类图斑套合,处理耕地属性,恢复类标注 (新要求),一键检查面重叠空隙,读取db表名,锐角检查工具增强版,可以定位锐角位置,在盘根目录生成锐角所在...
  • 怎么超链接的位置html

    千次阅读 2021-06-13 01:45:29
    html超链接位置的方法:首先给F1,F2,F3,F4的父元素一个宽;然后给F1,F2,F3,F4一个【display:block;】样式,再给他的父元素一个定位;最后调整【shuleft,top;】。本教程操作环境:windows7系统、html5版,...
  • 我现在做的是在应用中每次拍照或是摄像后,有一个保存按钮,点击保存的时候开启定位服务,有坐标信息后在定位信息的回中发送广播,然后接受坐标信息。但是现在遇到的一个问题是地理位置已经移动了,但是返回的坐标...
  • 精简的knn定位算法,包含数据集,可直接运行
  • //successFunc获取定位成功回函数,errorFunc获取定位失败回 //首先设置默认城市 var defCity = { id: '000001', name: '北京市', date: curDateTime()//获取当前时间方法 }; //默认城市 $.cookie('...
  • 南水北数据库.rar

    2020-06-29 09:46:00
    河南省南水北线路,详细的走向,地理位置,主要用于水源保护区划定,环境敏感区定位等行业,在建设过程中避免对水源保护区造成影响
  • 在 AndroidManifest.xml 中加上位置信息权限按需要添加 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <!-- 如果需要精确定位的话请加上此权限 --> <uses-...
  • 微信小程序 实现多次起授权位置弹框获取用户位置 需求:在小程序开发过程中通常需要获取用户的位置,有时会进入页面就要授权,有时点击某个按钮时需要授权。这时我们想到直接使用官方提供的wx.getLocation()来获取...
  • Android 定位服务和位置权限

    千次阅读 2020-07-27 16:43:33
    做地图功能时,在之前只需要一个位置权限即可,但不知道什么时候加了个定位服务,还是在系统设置里面。 看代码:lm.isProviderEnabled(LocationManager.GPS_PROVIDER);这一句就是定位服务的判断,如果没有开启定位...
  • 我通过GPS用locationmanager根本获取不到位置 不会回onLocationChanged,室内室外都不行,移动了也不行,用的真机测试 ``` private LocationListener listener = new LocationListener() { @Override public ...
  • 其中包括装主平面的建立、分光棱镜的精确定位以及干涉仪长臂反射镜、短臂反射镜的精密定位调整,整个装方案基于自准直原理并通过巧妙的基准转换关系最终实现了干涉仪安装位置精度优于0.01 mm、安装角度精度优于1...
  • 基于位置的服务简称LBS,主要的工作原理就是利用无线电通讯网络或GPS等定位方式来确定出移动设备所在的位置。 基于位置的服务所围绕的核心就是要先确定出用户所在的位置。一种是通过GPS定位,一种是通过网络定位。GPS...
  • //启用数据库 webSettings.setDatabaseEnabled(true); String dir = this.getApplicationContext().getDir("database", Context.MODE_PRIVATE).getPath...//启用地理定位 webSettings.setGeolocationEnabled(true);
  • APP起地图导航出现偏差 是什么问题造成的呢 一:可能是模糊定位造成的 二:也有可能 改变了经纬度的数据 解决思路如下 先了解一下起高德APP的各个参数是什么 百度地图 参数如下: 参数名称 描述 是否必选 ...
  • 原理使用一个默认颜色为透明的,并且只显示labelLine的饼状图然后通过调节这个透明的饼状图 以达到修改labelLine的位置echarts地址https://gallery.echartsjs.com/editor.html?c=x6VnXPfxlxecharts源码:option = {...
  • 第二步、获取key高德地图获取key流程 特别注意在获取发布版本安全码时确定自己已经创建了一...第四步、在mainActivity.java中添加定位代码 定位结果 附录:完整关键代码如下 1、Androidmanifest.xml &lt;?xml...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 144,193
精华内容 57,677
关键字:

怎么调定位位置