mpandroidchart - Kotlin 中的 MPAndroidChart 自定义标记视图
问题描述
我正在将我的应用程序移植到 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/AndroidRuntime:致命异常:主进程:com.example.eic.graphtest.app,PID:24549 java.lang.IllegalArgumentException:指定为非空的参数为空:方法 kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull,参数轴
解决方案
推荐阅读
- python - Python 3 - 无法在函数内增加全局变量
- angular - Ngx-bootstrap modal:将提示传递给 Modal 组件时出错
- c++ - 为什么我的代码没有运行整个程序但没有产生任何错误?
- jena - 在 Fuseki 服务器上启用 SSL 时遇到问题
- reactjs - ReactJS 不从产品上的智能合约(NEAR)调用方法(查看时测试网不存在)
- flutter - 聚焦时 Flutter TextField 标签在背景之外
- c++ - 正则表达式用另一个字符替换 C++ 中单个出现的字符
- c# - 上传文件C#时在标签中显示百分比
- apache - 使用 Apache 在另一个域上提供来自第一个域的子目录的内容
- c++ - 为什么我不能将 char 指针传递给 lambda。C++ 入门 ex13.44