https://github.com/CFutureTeam/android-image-map

package com.*.imagemap;

import *.imagemap.ImageMap;
import *.imagemap.core.Bubble;
import *.imagemap.core.CircleShape;
import *.imagemap.core.Shape;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView; public class MainActivity extends Activity { private ImageMap map; // lib库里面自定义试图对象 @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
map = (ImageMap) findViewById(R.id.imagemap);
// 用资源文件创建一个bitmap,地图
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.imm_01, new BitmapFactory.Options());
// 把图加载到ImageMap上面去
map.setMapBitmap(bitmap);
// 加载一个用来标注位置的视图view,这个view自己可以定义的
View bubble = getLayoutInflater().inflate(R.layout.popup, null);
// 把试图加进ImageMap
map.setBubbleView(bubble, new Bubble.RenderDelegate() {
@Override
public void onDisplay(Shape shape, View bubbleView) {
ImageView logo = (ImageView) bubbleView.findViewById(R.id.logo); //
// 通过bubbleView得到相应的控件
TextView name = (TextView) bubbleView.findViewById(R.id.name);
name.setText("我的位置"); // 标注上面显示一个文本
logo.setImageResource(R.drawable.kfc_logo); // 图片
}
}); // 该方法可以实现一个圆点,用于和bubble进行绑定,并且最终显示在地图上
CircleShape black = new CircleShape("NO", Color.RED); // Color.BLUE,圆点的颜色
double x = Math.random() * 100 + 100; // 随机x坐标,实际中,可以从服务器获取
double y = Math.random() * 100 + 100; // 随机y坐标
black.setValues(String.format("%.5f,%.5f,15", x, y)); // 设置圆点的位置和大小
map.addShapeAndRefToBubble(black); // 加到地图上 // 该方法可以实现一个圆点,用于和bubble进行绑定,并且最终显示在地图上
CircleShape black2 = new CircleShape("NO2", Color.BLUE); // Color.BLUE,圆点的颜色
double x1 = Math.random() * 300 + 100; // 随机x坐标,实际中,可以从服务器获取
double y1 = Math.random() * 300 + 100; // 随机y坐标
black2.setValues(String.format("%.5f,%.5f,15", x1, y1)); // 设置圆点的位置和大小
map.addShape(black2); // 加到地图上 // 该方法可以实现一个圆点,用于和bubble进行绑定,并且最终显示在地图上
CircleShape black3 = new CircleShape("NO3", Color.YELLOW); // Color.BLUE,圆点的颜色
double x2 = Math.random() * 500 + 100; // 随机x坐标,实际中,可以从服务器获取
double y2 = Math.random() * 500 + 100; // 随机y坐标
black3.setValues(String.format("%.5f,%.5f,15", x2, y2)); // 设置圆点的位置和大小
map.addShape(black3); // 加到地图上 } }

【Android】ImageMap,图片地图的更多相关文章

  1. Android使用百度地图出现闪退及定位时显示蓝屏问题

     目录 1.Android使用百度地图出现闪退 2.Android使用百度地图定位出现蓝屏问题     1.Android使用百度地图出现闪退 一般情况下出现闪退是在AndroidManifest.x ...

  2. Android studio 百度地图开发(3)地图导航

    Android studio 百度地图开发(3)地图导航 email:chentravelling@163.com 开发环境:win7 64位,Android Studio,请注意是Android S ...

  3. Android 绘制中国地图

    最近的版本有这样一个需求: 有 3 个要素: 中国地图 高亮省区 中心显示数字 面对这样一个需求,该如何实现呢? 高德地图 因为项目是基于高德地图来做的,所以很自然而然的想到了高德.但是当查阅高德地图 ...

  4. Android压缩图片到100K以下并保持不失真的高效方法

    前言:目前一般手机的相机都能达到800万像素,像我的Galaxy Nexus才500万像素,拍摄的照片也有1.5M左右.这么大的照片上传到服务器,不仅浪费流量,同时还浪费时间. 在开发Android企 ...

  5. 仿优酷Android客户端图片左右滑动(自动滑动)

    最终效果: 页面布局main.xml: <?xml version="1.0" encoding="utf-8"?> <LinearLayou ...

  6. 用ticons指令结合ImageMagickDisplay工具批量生成Android适应图片

    用ticons指令结合ImageMagickDisplay工具批量生成Android适应图片 ticons的用法可以百度 这里记录下具体的编译方法 在安装了ticons和ImageMagickDisp ...

  7. Android 实现图片画画板

    本文主要讲述了Android 实现图片画画板 设计项目布局: <RelativeLayout xmlns:android="http://schemas.android.com/apk ...

  8. 关于Android中图片大小、内存占用与drawable文件夹关系的研究与分析

    原文:关于Android中图片大小.内存占用与drawable文件夹关系的研究与分析 相关: Android drawable微技巧,你所不知道的drawable的那些细节 经常会有朋友问我这个问题: ...

  9. android 拉伸图片

    Android拉伸图片用的是9.png格式的图片,这种图片可以指定图片的那一部分拉伸,那一部分显示内容,美工给的小图片也能有很好的显示效果. 原背景图片 可以看到原背景图片很小,即使在再长的文字,背景 ...

  10. ArcGIS API for Silverlight之配准JPG图片地图文字倾斜解决方案

    原文:ArcGIS API for Silverlight之配准JPG图片地图文字倾斜解决方案 根据实际JPG图片进行配准后,发布的地图,利用ArcGIS API for Silverlight在网页 ...

随机推荐

  1. 上手并过渡到PHP7(2)——必须传递int, string, bool参数?没问题

    Type hints, Type safe 泊学实操视频 泊学原文链接PHP 7中最引人注目的新特性之一,无疑是Scalar type hints.我们可以在函数参数和返回值中使用scalar typ ...

  2. HTML坦克大战学习02---坦克动起来

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <t ...

  3. 消息中间件系列之Java API操作ActiveMQ

    一.依赖 <dependency> <groupId>org.apache.activemq</groupId> <artifactId>activem ...

  4. View与Model绑定注意事项 (视图无数据显示)

    Qt 中视图与模型绑定时,模型必须使用new来创建.否则刚开始初始化的时候,视图无数据显示,或者后期视图不能随着模型的改变而改变. 具体原因:我猜测是局部变量生命周期的问题.new 的变量在堆中,除非 ...

  5. android 虚拟键盘控制

    软键盘显示的原理 软键盘的本质是什么?软键盘其实是一个Dialog! InputMethodService为我们的输入法创建了一个Dialog,并且将该Dialog的Window的某些参数(如Grav ...

  6. bcm53344 gpio驱动分析

    /********************************************************************************* * 1.查看代码是在vim下,使用 ...

  7. The request lifetime scope cannot be created because the HttpContext is not available

    项目中应用了Autofac,在Global轮询处理Job的时候,需要获取现有得Service,而这些Service已经通过Autofac进行了配置,所以理所应当的用下面的代码去获取了. Depende ...

  8. 【转载】C#进阶系列——动态Lamada

    前言:在DDD系列文章里面,我们在后台仓储里面封装了传递Lamada表达式的通用方法,类似这样: public virtual IQueryable<TEntity> Find(Expre ...

  9. erlang -- ios apns provider -- erlang 实现

    os apns-apple notification server 与第三方provider的通信原理网上已有很多介绍,这里不再介绍,有想了解的大家可以去IOS官网https://developer. ...

  10. perl 脚本将phred33 转换为phred64

    今天用fastx_tookit 时遇到问题, 我的fastq 文件的碱基质量值格式为phred33, 而fastq_tookit 默认碱基质量值的格式为phred64, 所以报错了,提示我的fastq ...