移动网站开发 王府井网站制作百度

pingmian/2026/1/26 12:42:39/文章来源:
移动网站开发 王府井,网站制作百度,巩义做网站哪家好,网站颜色搭配表本文主要讲解如何实现在百度地图上添加覆盖物 1.承载数据的实体 我们从服务器返回的数据部分#xff0c;最终可能是个Json数组#xff0c;我们需要转换为实体集合#xff0c;即下面的Info.java 我直接在实体类中声明了一个静态列表集合#xff0c;模拟从服务器返回的数据…本文主要讲解如何实现在百度地图上添加覆盖物 1.承载数据的实体 我们从服务器返回的数据部分最终可能是个Json数组我们需要转换为实体集合即下面的Info.java 我直接在实体类中声明了一个静态列表集合模拟从服务器返回的数据Info.infos package com.zj.map2;import java.io.Serializable; import java.util.ArrayList; import java.util.List; public class Info implements Serializable { private static final long serialVersionUID -758459502806858414L; /** * 精度 */ private double latitude; /** * 纬度 */ private double longitude; /** * 图片ID真实项目中可能是图片路径 */ private int imgId; /** * 商家名称 */ private String name; /** * 距离 */ private String distance; /** * 赞数量 */ private int zan; public static ListInfo infos new ArrayListInfo(); static { infos.add(new Info(34.242652, 108.971171, R.drawable.a01, 英伦贵族小旅馆, 距离209米, 1456)); infos.add(new Info(34.242952, 108.972171, R.drawable.a02, 沙井国际洗浴会所, 距离897米, 456)); infos.add(new Info(34.242852, 108.973171, R.drawable.a03, 五环服装城, 距离249米, 1456)); infos.add(new Info(34.242152, 108.971971, R.drawable.a04, 老米家泡馍小炒, 距离679米, 1456)); } public Info() { } public Info(double latitude, double longitude, int imgId, String name, String distance, int zan) { super(); this.latitude latitude; this.longitude longitude; this.imgId imgId; this.name name; this.distance distance; this.zan zan; } public double getLatitude() { return latitude; } public void setLatitude(double latitude) { this.latitude latitude; } public double getLongitude() { return longitude; } public void setLongitude(double longitude) { this.longitude longitude; } public String getName() { return name; } public int getImgId() { return imgId; } public void setImgId(int imgId) { this.imgId imgId; } public void setName(String name) { this.name name; } public String getDistance() { return distance; } public void setDistance(String distance) { this.distance distance; } public int getZan() { return zan; } public void setZan(int zan) { this.zan zan; } } 在地图中添加overlay /** * 初始化图层 */ public void addInfosOverlay(ListInfo infos) { mBaiduMap.clear(); LatLng latLng null; OverlayOptions overlayOptions null; Marker marker null; for (Info info : infos) { // 位置 latLng new LatLng(info.getLatitude(), info.getLongitude()); // 图标 overlayOptions new MarkerOptions().position(latLng) .icon(mIconMaker).zIndex(5); marker (Marker) (mBaiduMap.addOverlay(overlayOptions)); Bundle bundle new Bundle(); bundle.putSerializable(info, info); marker.setExtraInfo(bundle); } // 将地图移到到最后一个经纬度位置 MapStatusUpdate u MapStatusUpdateFactory.newLatLng(latLng); mBaiduMap.setMapStatus(u); } 为地图上的maker添加点击事件 记得生成TextView的时候先设置背景再设置padding不然可能会失效~~~ private void initMarkerClickEvent(){// 对Marker的点击mBaiduMap.setOnMarkerClickListener(new OnMarkerClickListener(){Overridepublic boolean onMarkerClick(final Marker marker){// 获得marker中的数据Info info (Info) marker.getExtraInfo().get(info);InfoWindow mInfoWindow;// 生成一个TextView用户在地图中显示InfoWindowTextView location new TextView(getApplicationContext());location.setBackgroundResource(R.drawable.location_tips);location.setPadding(30, 20, 30, 50);location.setText(info.getName());// 将marker所在的经纬度的信息转化成屏幕上的坐标final LatLng ll marker.getPosition();Point p mBaiduMap.getProjection().toScreenLocation(ll);p.y - 47;LatLng llInfo mBaiduMap.getProjection().fromScreenLocation(p);// 为弹出的InfoWindow添加点击事件//mInfoWindownew InfoWindow(location);mInfoWindow new InfoWindow(location, llInfo,0);location.setOnClickListener(new OnClickListener() {Overridepublic void onClick(View v) {// TODO Auto-generated method stubmBaiduMap.hideInfoWindow();}});// 显示InfoWindowmBaiduMap.showInfoWindow(mInfoWindow);// 设置详细信息布局为可见mMarkerInfoLy.setVisibility(View.VISIBLE);// 根据商家信息为详细信息布局设置信息popupInfo(mMarkerInfoLy, info);return true;}});}布局文件 RelativeLayout xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:toolshttp://schemas.android.com/toolsandroid:layout_widthmatch_parentandroid:layout_heightmatch_parenttools:context${relativePackage}.${activityClass} com.baidu.mapapi.map.MapViewandroid:idid/id_bmapViewandroid:layout_widthfill_parentandroid:layout_heightfill_parentandroid:clickabletrue /RelativeLayout android:idid/id_marker_info android:visibilitygone android:layout_widthfill_parent android:layout_height220dp android:layout_alignParentBottomtrue android:background#CC4e5a6b android:clickabletrue ImageView android:idid/info_img android:layout_widthfill_parent android:layout_height150dp android:layout_marginBottom10dp android:layout_marginLeft12dp android:layout_marginRight12dp android:layout_marginTop10dp android:alpha1.0 android:backgrounddrawable/map_image_border_white android:clickabletrue android:scaleTypefitXY android:srcdrawable/a04 / RelativeLayout android:layout_widthfill_parent android:layout_height50dp android:layout_alignParentBottomtrue android:backgrounddrawable/bg_map_bottom LinearLayout android:layout_widthfill_parent android:layout_heightwrap_content android:layout_centerVerticaltrue android:layout_marginLeft20dp android:orientationvertical TextView android:idid/info_name android:layout_widthwrap_content android:layout_heightwrap_content android:text老米家泡馍小炒 android:textColor#FFF5EB / TextView android:idid/info_distance android:layout_widthwrap_content android:layout_heightwrap_content android:text距离200米 android:textColor#FFF5EB / /LinearLayout LinearLayout android:layout_widthwrap_content android:layout_heightwrap_content android:layout_alignParentRighttrue android:layout_centerVerticaltrue android:layout_marginRight20dp android:orientationhorizontal ImageView android:layout_widthwrap_content android:layout_heightwrap_content android:onClickzan android:srcdrawable/map_zan / TextView android:idid/info_zan android:layout_widthwrap_content android:layout_heightwrap_content android:layout_gravitycenter android:text652 android:textColor#FFF5EB / /LinearLayout /RelativeLayout /RelativeLayout /RelativeLayout MainActivity完整代码 package com.zj.map2;import java.util.List;import com.baidu.mapapi.SDKInitializer; import com.baidu.mapapi.map.BaiduMap; import com.baidu.mapapi.map.BaiduMap.OnMapClickListener; import com.baidu.mapapi.map.BaiduMap.OnMarkerClickListener; import com.baidu.mapapi.map.BitmapDescriptor; import com.baidu.mapapi.map.BitmapDescriptorFactory; import com.baidu.mapapi.map.InfoWindow; import com.baidu.mapapi.map.MapPoi; import com.baidu.mapapi.map.MapStatusUpdate; import com.baidu.mapapi.map.MapStatusUpdateFactory; import com.baidu.mapapi.map.MapView; import com.baidu.mapapi.map.Marker; import com.baidu.mapapi.map.MarkerOptions; import com.baidu.mapapi.map.OverlayOptions; import com.baidu.mapapi.model.LatLng;import android.app.Activity; import android.graphics.Point; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; import android.widget.ImageView; import android.widget.RelativeLayout; import android.widget.TextView;public class MainActivity extends Activity {MapView mapView;BaiduMap mBaiduMap;// 初始化全局 bitmap 信息不用时及时 recycleprivate BitmapDescriptor mIconMaker;private RelativeLayout mMarkerInfoLy;Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);SDKInitializer.initialize(getApplicationContext());setContentView(R.layout.activity_main);mapView(MapView) findViewById(R.id.id_bmapView);mMarkerInfoLy (RelativeLayout) findViewById(R.id.id_marker_info);mBaiduMapmapView.getMap();mIconMaker BitmapDescriptorFactory.fromResource(R.drawable.maker);MapStatusUpdate msu MapStatusUpdateFactory.zoomTo(15.0f);mBaiduMap.setMapStatus(msu);initMarkerClickEvent();initMapClickEvent();}private void initMapClickEvent(){mBaiduMap.setOnMapClickListener(new OnMapClickListener(){Overridepublic boolean onMapPoiClick(MapPoi arg0){return false;}Overridepublic void onMapClick(LatLng arg0){mMarkerInfoLy.setVisibility(View.GONE);mBaiduMap.hideInfoWindow();}});}private void initMarkerClickEvent(){// 对Marker的点击mBaiduMap.setOnMarkerClickListener(new OnMarkerClickListener(){Overridepublic boolean onMarkerClick(final Marker marker){// 获得marker中的数据Info info (Info) marker.getExtraInfo().get(info);InfoWindow mInfoWindow;// 生成一个TextView用户在地图中显示InfoWindowTextView location new TextView(getApplicationContext());location.setBackgroundResource(R.drawable.location_tips);location.setPadding(30, 20, 30, 50);location.setText(info.getName());// 将marker所在的经纬度的信息转化成屏幕上的坐标final LatLng ll marker.getPosition();Point p mBaiduMap.getProjection().toScreenLocation(ll);p.y - 47;LatLng llInfo mBaiduMap.getProjection().fromScreenLocation(p);// 为弹出的InfoWindow添加点击事件//mInfoWindownew InfoWindow(location);mInfoWindow new InfoWindow(location, llInfo,0);location.setOnClickListener(new OnClickListener() {Overridepublic void onClick(View v) {// TODO Auto-generated method stubmBaiduMap.hideInfoWindow();}});// 显示InfoWindowmBaiduMap.showInfoWindow(mInfoWindow);// 设置详细信息布局为可见mMarkerInfoLy.setVisibility(View.VISIBLE);// 根据商家信息为详细信息布局设置信息popupInfo(mMarkerInfoLy, info);return true;}});}/** * 根据info为布局上的控件设置信息 * * param mMarkerInfo2 * param info */ protected void popupInfo(RelativeLayout mMarkerLy, Info info) { ViewHolder viewHolder null; if (mMarkerLy.getTag() null) { viewHolder new ViewHolder(); viewHolder.infoImg (ImageView) mMarkerLy .findViewById(R.id.info_img); viewHolder.infoName (TextView) mMarkerLy .findViewById(R.id.info_name); viewHolder.infoDistance (TextView) mMarkerLy .findViewById(R.id.info_distance); viewHolder.infoZan (TextView) mMarkerLy .findViewById(R.id.info_zan); mMarkerLy.setTag(viewHolder); } viewHolder (ViewHolder) mMarkerLy.getTag(); viewHolder.infoImg.setImageResource(info.getImgId()); viewHolder.infoDistance.setText(info.getDistance()); viewHolder.infoName.setText(info.getName()); viewHolder.infoZan.setText(info.getZan() ); } /** * 复用弹出面板mMarkerLy的控件 * * author zhy * */ private class ViewHolder { ImageView infoImg; TextView infoName; TextView infoDistance; TextView infoZan; } Overridepublic boolean onCreateOptionsMenu(Menu menu) {// TODO Auto-generated method stubgetMenuInflater().inflate(R.menu.main, menu);return super.onCreateOptionsMenu(menu);}Overridepublic boolean onOptionsItemSelected(MenuItem item) {// TODO Auto-generated method stubswitch (item.getItemId()) {case R.id.id_menu_map_addMaker:addInfosOverlay(Info.infos);break;default:break;}return super.onOptionsItemSelected(item);}/*** 初始化图层*/public void addInfosOverlay(ListInfo infos){mBaiduMap.clear();LatLng latLng null;OverlayOptions overlayOptions null;Marker marker null;for (Info info : infos){// 位置latLng new LatLng(info.getLatitude(), info.getLongitude());// 图标overlayOptions new MarkerOptions().position(latLng).icon(mIconMaker).zIndex(5);marker (Marker) (mBaiduMap.addOverlay(overlayOptions));Bundle bundle new Bundle();bundle.putSerializable(info, info);marker.setExtraInfo(bundle);}// 将地图移到到最后一个经纬度位置MapStatusUpdate u MapStatusUpdateFactory.newLatLng(latLng);mBaiduMap.setMapStatus(u);} } 参考链接 Android 百度地图 SDK v3.0.0 三 添加覆盖物Marker与InfoWindow的使用 - Hongyang - 博客频道 - CSDN.NET 效果如下

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/85530.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

贵阳网站建设设计公司哪家好吉野家网站谁做的

基于蛾群算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于蛾群算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于蛾群优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要:针对PNN神经网络的光滑…

湖南网站seo公司赣州小程序建设包括哪些服务

目录 两数之和 字母异位词分组 最长连续序列 力扣热题100——哈希算法 两数之和 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答…

公司网站怎么做关键字澧县网站建设

目录 一、OpenStack 1、简介 2、硬件需求 3、网络 二、环境搭建 1、安全 2、主机网络 3、网络时间协议(NTP) 4、OpenStack包 5、SQL数据库 6、消息队列 7、Memcached 一、OpenStack 1、简介 官网:https://docs.openstack.org/2023.2/ OpenStack系统由…

外贸订单网站推广网站制作经典案例

那今天呢?我们来介绍一下sdp协议,那实际上呢?sdp协议非常的简单。我们如果拿到一个stp的文档去看的话,那你要分阅里边的所有的内容会觉得很枯燥,但实际上呢,如果我们按照这张图所展示的结构去看stp的话。你…

做一回最好的网站网站建设 壹起航

从自我学习到深层网络 在前一节中,我们利用自编码器来学习输入至 softmax 或 logistic 回归分类器的特征。这些特征仅利用未标注数据学习获得。在本节中,我们描述如何利用已标注数据进行微调,从而进一步优化这些特征。如果有大量已标注数据&a…

云羽网络做网站怎么样网页设计图片尺寸

锋哥原创的uniapp微信小程序投票系统实战: uniapp微信小程序投票系统实战课程 (SpringBoot2vue3.2element plus ) ( 火爆连载更新中... )_哔哩哔哩_bilibiliuniapp微信小程序投票系统实战课程 (SpringBoot2vue3.2element plus ) ( 火爆连载更新中... )共计21条视频…

下载 iis 网站用什么建网站

目录 一些比较流行的PEFT方案 Prompt Tuning Prefix Tuning LoRA QLoRA 引用链接 参考文档:通俗解读大模型微调(Fine Tuning) - 知乎 从参数规模的角度,大模型的微调分成两条技术路线: 一条是对全量的参数,进行全量的训练…

交城有做网站的吗做安卓开发要去看哪些网站

HTML 可以将文档分割为若干段落。 一、HTML 段落 段落是通过 <p> 标签定义的。 <p>这是一个段落 </p> <p>这是另一个段落</p> 注意&#xff1a;浏览器会自动地在段落的前后添加空行。&#xff08;</p> 是块级元素&#xff09; 二、不…

做网站尽在美橙互联诸城人才网招聘网

一、 Retrofit是什么 Retrofit是Android用来接口请求的网络框架&#xff0c;内部是基于OkHttp实现的&#xff0c;retrofit负责接口请求的封装&#xff0c;retrofit可以直接将接口数据解析为Bean类、List集合等&#xff0c;直接简化了中间繁琐的数据解析过程 二、 Retrofit的简单…

网站建设公司推广方式免费建立网站教程

1 窗体的大小固定住&#xff0c;不能调整其大小 窗体FormBorderStyle 属性设置为 FixedSingle; MaximizeBox 属性设置为false; MinimizeBox 属性设置为 false; 2. 在状态栏中无图标显示 设置为fase即可。 3. 设置窗体的启动位置 方法1&#xff0c; 用代码控制 this.Location …

网页布局实训心得体会搜索引擎优化关键词的处理

在多Activity开发中&#xff0c;有可能是自己应用之间的Activity跳转&#xff0c;或者夹带其他应用的可复用Activity。可能会希望跳转到原来某个Activity实例&#xff0c;而不是产生大量重复的Activity。 这需要为Activity配置特定的加载模式&#xff0c;而不是使用默认的加载模…

广州天河网站建设公司哪里做网站公司好

程序员的公众号&#xff1a;源1024&#xff0c;获取更多资料&#xff0c;无加密无套路&#xff01; 最近整理了一份大厂面试资料《史上最全大厂面试题》&#xff0c;Springboot、微服务、算法、数据结构、Zookeeper、Mybatis、Dubbo、linux、Kafka、Elasticsearch、数据库等等 …

电子政务网站建设的挑战如何做企业文化方案

目录 前言安装版本Docker版本说明前提条件Linux安装使用YUM源部署获取阿里云开源镜像站YUM源文件安装Docker-ce配置Docker Daemon启动文件启动Docker服务并查看已安装版本 使用二进制文件部署 Windows安装实现原理安装步骤基本使用 参考说明 前言 本文主要说明Docker及其相关组…

建站费用明细网页设计图片透明度怎么设置

在Linux系统中&#xff0c;创建目录是日常操作中的基础之一。除了常规的 mkdir 命令&#xff0c;还有一些高级的操作技巧和命令可以提高效率。本博客将介绍一些常用的目录创建方法&#xff0c;以及如何结合不同命令实现更复杂的目录结构。 1. 使用 mkdir 命令 基本创建&#x…

公司门户网站制作需要多少钱网站为什么改版

基于java的SSM框架高校校园点餐订餐系统演示 摘要 21世纪的今天&#xff0c;随着社会的不断发展与进步&#xff0c;人们对于信息科学化的认识&#xff0c;已由低层次向高层次发展&#xff0c;由原来的感性认识向理性认识提高&#xff0c;管理工作的重要性已逐渐被人们所认识&a…

国外比较有名的设计工作室网站做网站汉狮网络

CXX-Qt 0.6 发布 CXX-Qt 是一组 Rust 包&#xff0c;用于创建与 Qt 的双向 Rust ⇄ C 绑定。它可用于使用 CMake 将 Rust 集成到 C 应用程序中&#xff0c;或使用 Cargo 构建 Rust 应用程序。 CXX-Qt 提供了用于在 Rust 中实现 QObject 子类的工具&#xff0c;可在 C、QML 和 J…

重庆网站建设seo公司果乐宝的网站建设

纠结蓝桥杯参加嵌入式还是单片机组? 单片机包含于嵌入式&#xff0c;嵌入式不只是单片机。. 你只有浅浅的的单片机基础&#xff0c;只能报单片机了。最近很多小伙伴找我&#xff0c;说想要一些单片机资料&#xff0c;然后我根据自己从业十年经验&#xff0c;熬夜搞了几个通宵…

网站建设综合实训ppt模板成都网站建设公司排名

&#x1f308;带头双向循环链表 描述&#xff1a;一个节点内包含两个指针&#xff0c;一个指向上一个节点&#xff0c;另一个指向下一个节点。哨兵位指向的下一个节点为头节点&#xff0c;哨兵位的上一个指向尾节点。 结构优势&#xff1a;高效率找尾节点&#xff1b;高效率插入…

泉州专业网站开发公司游戏行业seo整站优化

作者 | Gartner研究总监 李晶 供稿 | Gartner 随着中国企业数字化成熟度和渗透度的不断提升&#xff0c;基础设施和运营 (I&O) 团队和领导者所需要提供的数字基础设施的位置也在逐渐增加&#xff0c;从云端、数据中⼼&#xff0c;延伸到了⽹络边缘&#xff0c;并且每个位置…

网站管理系统下载网站10月份可以做哪些有意思的专题

内存表与临时表区别 临时表&#xff0c;一般是人手动创建。 内存表&#xff0c;是mysql自动创建和销毁的。 内存表&#xff0c;指的是使用Memory引擎的表&#xff0c;建表语法&#xff1a;create table ... engine memeory 表的数据存在内存里&#xff0c;系统重启后会被清…