android - 在 Kotlin 中有没有办法在一些操作后初始化超类?
问题描述
这可能是非常基本的,但我似乎找不到用生成的值初始化超类的方法。例如,我想膨胀一个视图,然后将它传递给超类 RecyclerView.ViewHolder。
在斯威夫特我会做这样的事情:
class CustomViewHolder: RecyclerView.ViewHolder {
init(json: JSON) {
let view = getView(json)
super.init(view)
}
}
Kotlin 中是否有类似的方法?还是我必须将视图放在外面,然后将其传递给 CustomViewHolder 和 RecyclerView.ViewHolder?
解决方案
您可以即从伴随对象调用函数:
class CustomViewHolder(json: JSON) : RecyclerView.ViewHolder(getView(json)) {
companion object {
private fun getView(json: JSON): View {
//...
}
}
}
推荐阅读
- reactjs - index.js:1 Warning: Each child in a list should have a unique "key" prop
- javascript - 无法记录服务器中的所有成员 | 不和谐.js
- powerbi - 在 PowerBi 的表格可视化中获取(过滤的)独特文章的总数
- elasticsearch - 如何在写入 ElasticSearch 时使用更新 API(无痛)连接对象而不是整个替换
- image - 如何在 Flutter 中显示选取的图像
- javascript - Python/Javascript 中的 API 密钥请求
- python - .any() 没有识别出真值
- python-3.x - Openslide:删除飞利浦 TIFF 文件的“标签”图像
- asp.net-mvc - 调用函数 onClick ASP.NET Core
- lambda - Java 8 函数式编程,收集 List 类型的流的输出
?