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. WPF路由事件一:逻辑树和可视树

    一.什么是逻辑树 逻辑树就是描述WPF界面元素的实际构成,它是由程序在XAML中所有的UI元素组成.最显著的特点就是由布局控件.或者其他常用的控件组成. <Window x:Class=&quo ...

  2. WPF教程一:基础

    一.WPF简介WPF:WPF即Windows Presentation Foundation,翻译为中文“Windows呈现基础”,是微软推出的基于Windows Vista的用户界面框架,属于.NE ...

  3. js学习笔记10----字符串的基本操作

    1.字符串的基本操作如下: 定义字符串: var str = "Hello World!" 字符串的基本操作如下: str.length-----返回字符串长度,这里返回12 st ...

  4. python中copy 与 '=' 的区别

    当你a=1000的时候a指向一个新的类,内容为1000,而b仍然指向原来指向的内容,因为你没有叫它指向其他内容.你使用=符号,使得a和b指向同一个内容,而copy则是将b的内容复制后让c指向这个拷贝的 ...

  5. YARN : Architecture of Next Generation Apache Hadoop MapReduceFramework

    转自:http://blog.csdn.net/colorant/article/details/9146201 == 目标问题 == 下一代的Hadoop框架,支持10,000+节点规模的Hadoo ...

  6. python扩展

    补充一些有趣的知识 1. sys模块方法的补充,打印进度条 import sys,time for i in range(20): sys.stdout.write("#") sy ...

  7. C++编程 - tuple、any容器

    C++编程 - tuple.any容器 flyfish 2014-10-29 一 tuple tuple是固定大小的容器,每一个元素类型能够不同 作用1 替换struct struct t1 { in ...

  8. Windows下安装Scrapy

    安装python 根据你的需求下载python安装包,安装python(本文基于python27)https://www.python.org/downloads/ 在 环境变量---"Pa ...

  9. React中props与state

    以下内容均为个人理解. 1.state: 在react中,state可以看成管理页面状态的集合(实则一个对象而已),库里面的成员均为页面渲染变量,整个页面为一个状态机,当state发生变化时,页面会重 ...

  10. CSAPP chapter2 记录(bit_level_coding)

    p_154 //5x/8 define MSB_BIT (~(~)) int mul5div8(int val) { int sign = (val & MSB_BIT) == MSB_BIT ...