一个选取网格范围的控件,效果如下
使用方式
直接复制到项目的目录下使用
- 设置布局,该控件本身透明可以覆盖在上层使用。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.Toolbar
android:id="@+id/tool_bar"
android:layout_width="match_parent"
android:layout_height="?actionBarSize" />
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/android_25"/>
<com.llg.areasetview.AreaSetView
android:id="@+id/area_set_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerInParent="true"/>
</RelativeLayout>
- 初始化设置数据
setContentView(R.layout.activity_main);
mAreaSetView = findViewById(R.id.area_set_view);
//设置网格的x,y方向的数目
mAreaSetView.setXYCount(30,20);
//模拟选中的数据
HashSet<Point> selectedArea = new HashSet<>();
selectedArea.add(new Point(20,30));
selectedArea.add(new Point(21,30));
selectedArea.add(new Point(22,30));
selectedArea.add(new Point(23,30));
selectedArea.add(new Point(24,30));
selectedArea.add(new Point(25,30));
selectedArea.add(new Point(26,30));
selectedArea.add(new Point(27,31));
selectedArea.add(new Point(20,31));
selectedArea.add(new Point(21,31));
selectedArea.add(new Point(22,31));
selectedArea.add(new Point(23,32));
selectedArea.add(new Point(24,32));
selectedArea.add(new Point(25,32));
selectedArea.add(new Point(26,33));
selectedArea.add(new Point(27,33));
//设置选中区域
mAreaSetView.setSelectArea(selectedArea);