# zhhcommonview **Repository Path**: harry2815/zhhcommonview ## Basic Information - **Project Name**: zhhcommonview - **Description**: 基础通用自定义view - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-09-06 - **Last Updated**: 2023-09-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # zhhcommonview 基础通用自定义view 库引入方式,在对应需要使用该库的工程目录的build.gradle配置中设置: ``` implementation 'com.github.zhang-hai:zhhcommonview:0.7.0' ``` 1.ImageTextView ------------- 该View扩展了TextView,支持设置的icon的尺寸,可以做到icon大小自适应,支持上下左右设置icon。 可以完美替换ImageView + TextView组合。 使用方式: 2.RoundTextView ------------- 是一款多功能的自定义View,通过代码的方式设置各种drawable样式,免去创建多个不用样式的xml的苦恼。 该View同样扩展了TextView,除了带ImageTextView的功能外,还支持下设置 - 设置边框粗细、颜色、press和select样式 - 设置背景填充色、press和select样式 - 设置圆角 - 设置文本字体在press和select状态的颜色 使用方式如下: 支持以下自定义属性 - corner 圆角尺寸 - solid_color 正常状态背景填充色 - press_solid_color 按下时的背景填充颜色 - select_solid_color 选中时的背景填充颜色 - stroke_width 正常状态边框粗细 - stroke_color 正常状态的边框颜色 - press_stroke_color 按下时的背景边框颜色 - select_stroke_color 选中时的边框颜色 - press_text_color 按下时的字体颜色 - select_text_color 选中时的字体颜色 3.自定义图表组件 ------------- 雷达图 ------------- 使用方式: XML中添加RadarChartView 支持以下自定义属性 - radius 雷达最大半径,若设置了宽度和高度,请确保至少宽高 要大于radius * 2; - backgroundLineColor 雷达蜘蛛网线条颜色 - edgeTextSize 指标文字大小 - edgeTextColor 指标文字颜色 - areaColor 数据区域颜色 - lineColor 数据折线颜色 代码中设置数据源及点击数据区域回调 RadarChartView chartView = findViewById(R.id.rcv_radar); //addTestData()是获取数据源,返回List列表 chartView.setRadarChartData(addTestData()); //回调接口,若想展示选中区域数据详情可以在onClick方法中做自己的UI展示,如弹窗 chartView.setOnRadarChartViewListener(new OnCommonChartViewListener() { @Override public void onCancel() { //取消事件,如果展示数据的UI,这里可以关闭 } @Override public void onClick(RadarChartView.RadarItemData data, float ix, float iy) { //再这里可以展示数据 Log.i("MainActivity",String.format(Locale.CHINESE,"data--->%s,ix-->%f,iy---->%f",data.toString(), ix,iy)); } }); 柱状图 ------------- 支持组模式和单一柱图模式。 使用方式: 先在XML中添加BarChartView 支持以下自定义属性 - perBarWidth 每个柱子的宽度; - groupPerBarSpace 每组内部柱子之间的间距 - yAxisLineColor 横向线条颜色 - xLabelColor X轴标签文字颜色 - xLabelTextSize X轴标签文字大小 - yLabelColor Y轴标签文字颜色 - yLabelTextSize Y轴标签文字大小 - legendLabelColor 柱状图的图例文字颜色 - legendLabelTextSize 柱状图的图例文字大小 - legendIconWidth 柱状图的图例icon宽度 - legendIconShape 柱状图的用例icon样式,支持:square正方形、circle圆形,默认为square 在代码中添加数据源及回调接口 BarChartView chart = findViewById(R.id.barChartView); //buildBarChartData()方法构建数据源并返回List chart.setBarChartData(buildBarChartData()); //回调接口,若想展示选中区域数据详情可以在onClick方法中做自己的UI展示,如弹窗 chart.setOnChartViewListener(new OnCommonChartViewListener() { @Override public void onCancel() { } @Override public void onClick(BarChartData data, float ix, float iy) { Log.i("MainActivity",String.format(Locale.CHINESE,"data--->%s,ix-->%f,iy---->%f",data.toString(), ix,iy)); } });