要想使用自定义的Callout,首先需要几个步骤:
1、定义Callout的样式
根据官方给的介绍,这里我们选择在res目录下新建一个xml目录,在目录里新建一个名为callout_style.xml的配置文件,用于配置callout的样式。代码如下所示:

<?xml version="1.0" encoding="utf-8"?>
<resources><calloutViewStyle>titleTextColor="#000000"      <!-- 标题颜色 -->titleTextSize = 10;           <!-- 标题文字大小 -->titleTextStyle = 0;           <!-- 字体样式 -->titleTextTypeFace = 0;        <!-- 字体类型设置 --> backgroundColor="#ffffff"    <!-- Callout背景颜色 -->backgroundAlpha="255"        <!-- Callout透明度 -->frameColor="#000000"         <!-- 边框颜色 -->flat="true"                  <!-- true表示2D图形,false表示3D图形 -->style.getCornerCurve()="0"   <!-- 边框的角的圆润程度 -->anchor="5"                   <!-- 锚点的位置--> </calloutViewStyle>
</resources>

2、自定义Callout的布局
我们在res/layout目录下新建一个callout_layout.xml的配置文件,用来布置Callout的界面布局。代码如下所示:

<?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="horizontal" ><LinearLayout
        android:layout_width="150dp"android:layout_height="wrap_content"android:orientation="vertical" ><TextView
            android:id="@+id/title"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text=""android:textSize="12sp"/><TextView
            android:id="@+id/content"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text=""android:textSize="12sp"/></LinearLayout></LinearLayout>

3、在代码中使用Callout
定义好了配置文件,接下来就是在代码中使用这个Callout了,需要注意的是,一个MapView只能同时显示一个Callout,并且,这个Callout只能从MapView中获取。Java代码如下:

                    LayoutInflater inflater = LayoutInflater.from(context);  View view = inflater.inflate(R.layout.callout_layout, null);// 设置Callout属性TextView title = (TextView)view.findViewById(R.id.title);TextView content = (TextView)view.findViewById(R.id.content);title.setText("这是Callout的标题");content.setText("这是Callout的内容");// 设置Callout锚点(MapView上的一个地图位置点)Point test = new Point(map.toMapPoint(new Point(e.getX(),e.getY())).getX(),map.toMapPoint(new Point(e.getX(),e.getY())).getY()); // 获取CalloutCallout callout = map.getCallout();// 设置Callout样式callout.setStyle(R.xml.callout_style);// 设置锚点偏移量callout.setOffset(0, -5);// 显示Calloutcallout.show(test, view);title.setOnClickListener(new OnClickListener() {public void onClick(View v) {Log.d(TAG, "你点了插图上的标题!但是并没什么动静。");}});

【ArcGIS for Android】使用自定义Callout显示地图信息相关推荐

  1. arcgis for android(二)显示二维地图

    1.上一节讲了 arcgis for android 入门与提高(一)配置环境https://blog.csdn.net/HB_Programmer/article/details/119967868 ...

  2. ArcGIS for Android 100.3.0(10):Callout的使用

    通过调用从MapView的getCallout()获取Callout对象. 官方API: https://developers.arcgis.com/android/latest/api-refere ...

  3. android 在自定义的listview(有刷新加载项)列表中,数据过少时不能铺满整个屏幕时,header和footer同时显示问题...

    android  在自定义的listview(有刷新加载项)列表中,数据过少时,当刷新时,加载项也会显示,这是很头疼的一个问题,查阅了一些资料,总结了一个比较不错的方法: 原来代码: 1 @Overr ...

  4. Android 自定义 ListView 显示网络上 JSON 格式歌曲列表

    本文内容 环境 项目结构 演示自定义 ListView 显示网络上 JSON 歌曲列表 参考资料 本文最开始看的是一个国人翻译的文章,没有源代码可下载,根据文中提供的代码片段,自己新建的项目(比较可恶 ...

  5. Android Toast 自定义显示时长

    Android Toast 只支持两种时间 LENGTH_SHORT 2 秒,LENGTH_LONG 3.5 秒,但是有场景需要自定义显示时长就会有问题,所以需要自定义实现,下边是自定义的类,通过定时 ...

  6. android seekbar 背景颜色,Android中自定义SeekBar如何实现分段显示不同背景颜色

    Android中自定义SeekBar如何实现分段显示不同背景颜色 发布时间:2020-07-17 16:04:27 来源:亿速云 阅读:197 作者:小猪 这篇文章主要讲解了Android中自定义Se ...

  7. Android 自定义Toast显示(不限时+在其他应用之上显示)

    自定义Toast显示(不限时+在其他应用之上显示) 一.首先写好自定义Toast的布局 toast_view.xml <?xml version="1.0" encoding ...

  8. 修改Android设备型号、版本号、去掉自定义版本显示

    1.修改型号 源码位置 build/tools/buildinfo.sh echo "ro.product.model="MTK6737_64_bsp"" ec ...

  9. android toast 自定义时间,Android Toast自定义显示时间

    Toast是Android中使用频率较高的弹窗提示手段,使用起来简单.方便.常规使用方法这里不做说明,继前一篇博客<Android中Toast全屏显示> ,其中抛砖引玉的给出一个简单的实现 ...

最新文章

  1. quartz定时任务开发cron常用网站
  2. IEEE迎来首位华人主席,马里兰大学终身教授刘国瑞当选
  3. atom和phpcs
  4. java 模拟http文件上传,HttpURLConnection上传多文件
  5. kaios好用吗_印度 KaiOS操作系统有可能会成为世界第三大操作系统?
  6. spark-submit提交参数说明以及与yarn-site.xml中参数的相互约束关系+spark运行架构图解(持续更新中)
  7. sql server 查询本周、本月所有天数的数据
  8. 计算机工作应用工作简历,计算机应用专业工作简历范文
  9. Java:中的String,StringBuilder,StringBuffer三者的区别
  10. AWT_addKeyListener键盘监听事件(Java)
  11. 蓝奏网盘 解析 php,自制蓝奏云网盘解析接口全解
  12. C语言结构体,共用体所占字节数计算
  13. linux进程3种状态,进程的三种状态及转换
  14. C语言实现约分最简分式
  15. 活着的意义--读《此生未完成》有感
  16. MPC-HC/MPC-BE/LAV Filter等播放器相关
  17. app小程序手机端Python爬虫实战10xpath定位方式
  18. 新浪微博技术架构分析-转载
  19. python实战笔记之(8):下载知乎视频
  20. 用matlab做随机实验1

热门文章

  1. 计算机显卡怎样安装方法,电脑装机小知识,新手如何正确安装好独立显卡
  2. [manacher][hash]Magic Spells 2022牛客多校第9场 G
  3. mw320r虚拟服务器,水星MW320R路由器桥接设置教程-水星路由器设置
  4. 【报告分享】数观食机|2020快手食品行业数据价值报告-磁力引擎-202103.pdf(附下载地址)
  5. 动态修改spine动画渲染层次
  6. 牛客网练习—《网络基础》DAY4
  7. 1046 Shortest Distance (20分)测试点分析
  8. [流体力学]描述流体运动的方法:拉格朗日法和欧拉法
  9. php怎么把中文转,PHP如何将中文转为拼音?
  10. 【风马一族_win10设置热点】win10无法开启热点怎么办