我有一个在LineChart上绘制的入口点列表。现在,我想将图标设置为特定点。如何在LineChart
中将图标设置或绘制到我在MPAndroidChart中选择的位置?
答案 0 :(得分:0)
您可以使用3个参数Entry
构造函数将图标添加到所选点,其中第三个参数是Drawable
:
公共条目(浮动x,浮动y,android.graphics.drawable.Drawable图标)
参数: x-x值 y-y值(条目的实际值) 图标-图标图像
Ref: MPAndroidChart v3.0.3 JavaDoc
示例:
ArrayList<Entry> values = new ArrayList<Entry>();
values.add(new Entry (x, y, ContextCompat.getDrawable(getApplicationContext(),R.drawable.star)));
您可以通过在LineDataSet
构造函数中添加Drawable
,用整个Entry
中的图标标记一个点。
答案 1 :(得分:0)
我知道这是一个老问题,但这是我的解决方案,以防万一仍然有人需要它。
首先,您需要在数据集上调用 @-webkit-keyframes loader-spinner {
0% {
-webkit-transform: translate3d(-50%, -50%, 0) rotate(0deg);
}
100% {
-webkit-transform: translate3d(-50%, -50%, 0) rotate(360deg);
}
}
@-moz-keyframes loader-spinner {
0% {
-moz-transform: translate3d(-50%, -50%, 0) rotate(0deg);
}
100% {
-moz-transform: translate3d(-50%, -50%, 0) rotate(360deg);
}
}
@-ms-keyframes loader-spinner {
0% {
-ms-transform: translate3d(-50%, -50%, 0) rotate(0deg);
}
100% {
-ms-transform: translate3d(-50%, -50%, 0) rotate(360deg);
}
}
@keyframes loader-spinner {
0% {
transform: translate3d(-50%, -50%, 0) rotate(0deg);
}
100% {
transform: translate3d(-50%, -50%, 0) rotate(360deg);
}
}
.loader-spinner {
display: none;
top: 0;
left: 0;
right: 0;
bottom: 0;
height: 100vh;
background-color: rgba(255,255,255,0.5);
opacity: 1;
z-index: 99;
position: absolute;
transition: opacity linear 0.1s;
}
.loader-spinner::before {
-webkit-animation: 2s linear infinite loader-spinner;
-moz-animation: 2s linear infinite loader-spinner;
-ms-animation: 2s linear infinite loader-spinner;
-o-animation: 2s linear infinite loader-spinner;
animation: 2s linear infinite loader-spinner;
border: solid 3px #eee;
border-bottom-color: #EF6565;
border-radius: 50%;
content: "";
height: 40px;
left: 50%;
opacity: inherit;
position: absolute;
top: 50%;
-webkit-transform: translate3d(-50%, -50%, 0);
-moz-transform: translate3d(-50%, -50%, 0);
-ms-transform: translate3d(-50%, -50%, 0);
transform: translate3d(-50%, -50%, 0);
-webkit-transform-origin: center;
-moz-transform-origin: center;
-ms-transform-origin: center;
transform-origin: center;
width: 40px;
will-change: transform;
}
。然后,您需要将您的条目定义为班级内部的成员,以便以后可以重置它。
setDrawIcons(true)
在private var selectedEntry: Entry? = null
内,您需要将onValueSelected
图标设置为null(如果存在),并为新的selectedEntry's
点设置图标。
selectedEntry