转载自:http://blog.csdn.net/yanliabcd/article/details/78348254

项目地址:https://github.com/604982372/IrregularView.git

我这里实现android不同区域选择是通过坐标和点击区域的颜色(本项目使用红色)来实现。

1.通过当前点击的区域坐标和颜色来判断属于哪张图片,然后将对应的图片显示出来。

实现步骤:

1.准备一套图片,每张图片大小一样,可以重合。

2.项目中布局(最好切好尺寸图,自定义大小会影响准确性)

 

<cn.xiwu.myview.IrregularView
    android:id="@+id/il"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"
    android:src="@drawable/a"
   />

3.把整套图id传递给IrregularView

@Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        IrregularView irView  = (IrregularView) findViewById(R.id.il);
        irView.setImgResIds(new int[]{
                        R.drawable.b,
                        R.drawable.c,
                        R.drawable.d,
                        R.drawable.e,
                        R.drawable.f,
                        R.drawable.g,
                        R.drawable.h,
                        R.drawable.i,
                        R.drawable.j,
                        R.drawable.k,
                        R.drawable.l,
                        R.drawable.m,
                        R.drawable.n,
                        R.drawable.o,
                        R.drawable.p,
                        R.drawable.q,
                        R.drawable.r,
                        R.drawable.s,
                        R.drawable.t,
                        R.drawable.u});
    }

4.选择一个市面上主流分辨率的手机(我这里选择1920*1080),首次运行是采集坐标所有图红色区域坐标(ps:每张图的红色区域不重合)

通过"3699coorstr"打印过滤获取坐标,复制粘贴出来

通过"3699coorcount"打印过滤获取每张图片红色区域坐标个数,复制出来

“8%%29”表示坐标点“====”是分隔符

“100”表示第一张图片红色区域坐标有100个

把数据粘贴到strings.xml

注意命名要于IrregularView类中的一致

 

posted on 2017-08-21 21:48  汐兀  阅读(289)  评论(0编辑  收藏  举报