项目设置一个类似HTML map标签功能的Android组件

文章结束给大家来个程序员笑话:[M]

    项目地址: 

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

    

    

    

一个相似HTML map标签功能的Android组件。可以实现HTML里图片热点映射。

    

An android view like html map tag.

    

    项目结构

    此项目是在Android Stdio IDE中创立的,其目录结构与Eclipse很不同。如果应用Eclipse打开,需要把路径设置到 ...../ImageMap/src/main 里。

    

    

    截图

    

项目和设置

    

    特色 

    

    

    

    * 支撑图像缩放和拖动。图中色块覆盖的区域为图片热点。图像缩放和拖动时,这些热点区域也会随着缩放和移动。 

    

    

    * 支撑 Circle,Rect,Poly 三种形状。对应的类为 CircleShape, RectShape, PolyShape。向ImageMap对象中添加即可。

    

    

    * 支撑纯生HTML map数据,可以直接把HTML Map生成的coords数据直接设置到Shape中。 

    

    

    * 支撑Bitmap对象,res目录下的drawable文件等数据来源。 * 在代码中创立或者XML中布局。

    

    

    

## 应用

    

    

    

详细代码见MainActivity.java文件。项目为Android可运行项目,直接运行即可。

    

    一个相似HTML map标签功能的Android组件。可以实现HTML里图片热点映射。

    

    

    An android view like html map tag.

    

    

    项目结构

    

    

    此项目是在Android Stdio IDE中创立的,其目录结构与Eclipse很不同。

    

    如果应用Eclipse打开,需要把路径设置到 ...../ImageMap/src/main 里。

    

    截图

    

    

    

    

    特色

    

    

    * 支撑图像缩放和拖动。图中色块覆盖的区域为图片热点。图像缩放和拖动时,这些热点区域也会随着缩放和移动。

    

    

    * 支撑 Circle,Rect,Poly 三种形状。对应的类为 CircleShape, RectShape, PolyShape。向ImageMap对象中添加即可。

    

    

    * 支撑纯生HTML map数据,可以直接把HTML Map生成的coords数据直接设置到Shape中。

    

    

    * 支撑Bitmap对象,res目录下的drawable文件等数据来源。

    

    

    * 在代码中创立或者XML中布局。

    

    ## 应用

    

    

    详细代码见MainActivity.java文件。项目为Android可运行项目,直接运行即可。

    

    

        //取得在XML中布局的ImageMap对象,并设置图片

    

    每日一道理
古人云:“海纳百川,有容乃大。”人世间,弗成能没有矛盾和争吵,我们要以磊落的胸怀和宽容的微笑去面对它 。哈伯德也曾说过:“宽恕和受宽恕的难以言喻的快乐,是连神明都会为之羡慕的极大乐事。”让我们从宽容中享受快乐,从谅解中体会幸福吧!

    

?
代码片段,双击复制
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
    ImageMap map = (ImageMap) findViewById(R.id.imagemap);
         Bitmap bitmap = BitmapFactory.decodeResource(getResources(),R.drawable.pink_girl, new BitmapFactory.Options());
         map.setMapBitmap(bitmap);
 
    // 设置Shape被点击时的监听
    // 注意:统一时辰只有一个Shape被监听点击
    map.setOnShapeClickListener( new ShapeExtension.OnShapeClickListener() {
         @Override
         public void onShapeClick(Shape shape, float xOnImage, float yOnImage) {
             String msg = "Shape " +shape.tag+ " clicked !" ;
             Toast.makeText(MainActivity. this ,msg,Toast.LENGTH_SHORT).show();
         }
    });
 
    // 圆形
    // "black"是唯一标识这个Shape的字符串,弗成重复。
    Shape black = new CircleShape( "black" , Color.BLACK);
    black.setValues( 633 , 122 , 15 );
    map.addShape(black);
 
    // 矩形
    Shape black = new CircleShape( "black" , Color.BLACK);
    black.setValues( 633 , 122 , 15 );
    map.addShape(black);
 
    // 多边形
    Shape black = new CircleShape( "black" , Color.BLACK);
    black.setValues( 633 , 122 , 15 );
    map.addShape(black);

    

文章结束给大家分享下程序员的一些笑话语录: 关于编程语言
如果 C++是一把锤子的话,那么编程就会变成大手指头。
如果你找了一百万只猴子来敲打一百万个键盘,那么会有一只猴子会敲出一 段 Java 程序,而其余的只会敲出 Perl 程序。
一阵急促的敲门声,“谁啊!”,过了 5 分钟,门外传来“Java”。
如果说 Java 很不错是因为它可以运行在所有的操作系统上,那么就可以说 肛交很不错,因为其可以使用于所有的性别上。

原文地址:https://www.cnblogs.com/xinyuyuanm/p/3091763.html