Dav*_*vid 7 charts android mpandroidchart
是否可以使用MPAndroidChart(或任何其他Android图表库)以渐变颜色填充绘制线下的图表?像这样的东西:
set1.setFillColor(getResources().getColor(R.drawable.chart_fill));
Run Code Online (Sandbox Code Playgroud)
然后在chart_fill.xml
:
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<gradient
android:angle="90"
android:endColor="#FF207a54"
android:startColor="#FFffffff" />
</shape>
Run Code Online (Sandbox Code Playgroud)
Dav*_*son 15
您可以使用以下两种方法:
LineRadarDataSet#setDrawFilled(boolean isFilled);
LineRadarDataSet#setFillDrawable(Drawable d);
Run Code Online (Sandbox Code Playgroud)
这是该类的javadoc的链接.
set1.setDrawFilled(true);
if (Utils.getSDKInt() >= 18) {
// fill drawable only supported on api level 18 and above
Drawable drawable = ContextCompat.getDrawable(this, R.drawable.fade_red);
set1.setFillDrawable(drawable);
}
else {
set1.setFillColor(Color.BLACK);
}
Run Code Online (Sandbox Code Playgroud)
在fade_red.xml
:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:angle="90"
android:startColor="#00ff0000"
android:endColor="#ffff0000" />
</shape>
Run Code Online (Sandbox Code Playgroud)
以下是一个示例LineChart
:
科特林解决方案:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) {
lineDataSet.setDrawFilled(true)
val fillGradient = ContextCompat.getDrawable(requireContext(), R.drawable.red_gradient)
lineDataSet.fillDrawable = fillGradient
}
Run Code Online (Sandbox Code Playgroud)
这是red_gradient.xml
文件:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:angle="90"
android:startColor="#00F81616"
android:endColor="#ffF81616" />
</shape>
Run Code Online (Sandbox Code Playgroud)
好吧我找到了解决方案:
威廉·查特和我正在使用这种方法:
int[] colors = { getResources().getColor(R.color.menu_text),
getResources().getColor(android.R.color.white) };
float[] index = { 0, 1 };
dataset.setGradientFill(colors, index);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10275 次 |
最近记录: |