我正在将我的应用程序移植到android,并且正在使用该库的iOS版本,因此我对Android开发不太熟悉。
我试图实现此类XYMARKER,以使其与iOS应用程序中的状态类似。但是我在创建自定义类时遇到问题,这是我所拥有的:
class XYMarkerView(context: Context, xAxisValueFormatter: IAxisValueFormatter): MarkerView(context, R.layout.marker_view) {
var tvContent: TextView
var xAxisValueFormatter: IAxisValueFormatter
var format: DecimalFormat
init{
this.xAxisValueFormatter = xAxisValueFormatter
tvContent = findViewById(R.id.tvContent)
format = DecimalFormat("###.0")
}
// fun XYMarkerView(context: Context , xAxisValueFormatter: IAxisValueFormatter) {
//
//
// this.xAxisValueFormatter = xAxisValueFormatter
// tvContent = findViewById(R.id.tvContent)
// format = DecimalFormat("###.0")
// }
// callbacks everytime the MarkerView is redrawn, can be used to update the
// content (user-interface)
override fun refreshContent(e: Entry, highlight: Highlight) {
tvContent.text = "x: " + xAxisValueFormatter.getFormattedValue(e.x, null) + ", y: " + format.format(e.y)
super.refreshContent(e, highlight);
}
override fun getOffset(): MPPointF {
return MPPointF(-(width / 2).toFloat(), -height.toFloat())
}
}
我不确定自己在做什么错,但是我已经把它弄乱了一段时间,而且似乎无法使其正常工作。现在,当我点击一个点时,我得到了错误:
E / Android运行时:致命异常:主要 流程:com.example.eic.graphtest.app,PID:24549 java.lang.IllegalArgumentException:指定为非null的参数为null:方法kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull,参数轴