From a758cecd8430f93da501d5b5ebabb032876f758f Mon Sep 17 00:00:00 2001 From: wangyiqian Date: Sat, 23 Apr 2022 00:05:00 +0800 Subject: [PATCH] =?UTF-8?q?KChart=20=E5=A2=9E=E5=8A=A0=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=20=E6=94=AF=E6=8C=81=E6=8C=87=E5=AE=9Ay=E8=BD=B4=E8=8C=83?= =?UTF-8?q?=E5=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 ++ lib/build.gradle | 4 ++-- .../wangyiqian/stockchart/childchart/kchart/KChart.kt | 8 ++++++++ .../stockchart/childchart/kchart/KChartConfig.kt | 6 +++++- samples/build.gradle | 8 ++++---- 5 files changed, 21 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 1dab070..9004438 100644 --- a/README.md +++ b/README.md @@ -185,6 +185,8 @@ Data.loadDayData(this, 0) { kEntities: List -> |showAvgLine|是否显示分时均线。若需要显示,K线数据需带有分时均线价格。| |avgLineColor|分时均线颜色| |avgLineStrokeWidth|分时均线宽度| +|yValueMin|y轴范围最小值,在增加或修改K线数据之前指定才有效| +|yValueMax|y轴范围最大值,在增加或修改K线数据之前指定才有效| ##### 时间条图配置`TimeBarConfig` |字段|描述| diff --git a/lib/build.gradle b/lib/build.gradle index 77cdb44..7f51213 100644 --- a/lib/build.gradle +++ b/lib/build.gradle @@ -20,12 +20,12 @@ plugins { group='com.github.wangyiqian' android { - compileSdkVersion 29 + compileSdkVersion 32 buildToolsVersion "29.0.3" defaultConfig { minSdkVersion 21 - targetSdkVersion 29 + targetSdkVersion 32 } buildTypes { diff --git a/lib/src/main/java/com/github/wangyiqian/stockchart/childchart/kchart/KChart.kt b/lib/src/main/java/com/github/wangyiqian/stockchart/childchart/kchart/KChart.kt index ba707e8..3052a0e 100644 --- a/lib/src/main/java/com/github/wangyiqian/stockchart/childchart/kchart/KChart.kt +++ b/lib/src/main/java/com/github/wangyiqian/stockchart/childchart/kchart/KChart.kt @@ -115,6 +115,12 @@ open class KChart( calculateIndexList() } + if (chartConfig.yValueMin != null && chartConfig.yValueMax != null) { + result[0] = chartConfig.yValueMin!! + result[1] = chartConfig.yValueMax!! + return + } + var yMin = 0f var yMax = 0f @@ -170,6 +176,8 @@ open class KChart( result[0] = yMin - delta result[1] = yMax + delta } + chartConfig.yValueMin?.apply { result[0] = this } + chartConfig.yValueMax?.apply { result[1] = this } } override fun preDrawBackground(canvas: Canvas) {} diff --git a/lib/src/main/java/com/github/wangyiqian/stockchart/childchart/kchart/KChartConfig.kt b/lib/src/main/java/com/github/wangyiqian/stockchart/childchart/kchart/KChartConfig.kt index 43765cc..8132d69 100644 --- a/lib/src/main/java/com/github/wangyiqian/stockchart/childchart/kchart/KChartConfig.kt +++ b/lib/src/main/java/com/github/wangyiqian/stockchart/childchart/kchart/KChartConfig.kt @@ -81,7 +81,11 @@ open class KChartConfig( // 分时均线颜色 var avgLineColor: Int = DEFAULT_AVG_LINE_COLOR, // 分时均线宽度 - var avgLineStrokeWidth: Float = DEFAULT_AVG_LINE_WIDTH + var avgLineStrokeWidth: Float = DEFAULT_AVG_LINE_WIDTH, + // y轴范围最小值,在增加或修改K线数据之前指定才有效 + var yValueMin: Float? = null, + // y轴范围最大值,在增加或修改K线数据之前指定才有效 + var yValueMax: Float? = null ) : BaseChildChartConfig( height, marginTop, diff --git a/samples/build.gradle b/samples/build.gradle index a03d3bc..303e94e 100644 --- a/samples/build.gradle +++ b/samples/build.gradle @@ -18,13 +18,13 @@ plugins { } android { - compileSdkVersion 29 + compileSdkVersion 32 buildToolsVersion "29.0.3" defaultConfig { applicationId "com.github.wangyiqian.stockchart.sample" minSdkVersion 24 - targetSdkVersion 29 + targetSdkVersion 32 versionCode 1 versionName "1.0" @@ -70,6 +70,6 @@ dependencies { androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' implementation 'com.google.android:flexbox:2.0.1' -// implementation project(':lib') - implementation 'com.github.wangyiqian:StockChart:1.1.0' + implementation project(':lib') +// implementation 'com.github.wangyiqian:StockChart:1.1.0' } \ No newline at end of file