【Android】ImageMap,图片地图
16lz
2022-01-25
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(安卓)统计图表引擎 AChartEngine(三) - 示例源码折线图
- Android(安卓)学习笔记-2010年10月
- android————Button
- android 屏幕适配之自动生成多重values
- Android之2D图形(圆、直线、点)工具类 (持续更新)
- Android获取基站坐标代码
- android画了一个笑脸
- TextView和EditText
- Android(安卓)View drawText 文本居中