- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在研究为回收器 View 实现 onClick 的最佳方法,有很好的方法可以做到这一点,但是传递 fragment 并引用 fragment 中的函数是一个不错的解决方案吗?第一次在这里提问,格式不好请见谅。
fragment :
class MyFragment: BaseFragment() {
private val selectedList = ArrayList<Object>()
......
rvTempListView.adapter = MyAdapter(
tempGroupedList,
this
)
.......
fun itemSelected(object: Object) {
if (object in selectedList){
selectedList.remove(object)
} else {
selectedList.add(object)
}
}
}
RecyclerView.Adapter:
class MyAdapter(val uniqueObjects: MutableList<Object>,
val myFragment: MyFragment)
: RecyclerView.Adapter<MyAdapter.ViewHolder>() {
val TAG = javaClass.simpleName
.......
cardView.setOnClickListener {
mFragment.itemSelected(uniqueObjects[position]) {
if (toggle){
ivChecked.visibility = View.VISIBLE
toggle = !toggle
} else {
ivChecked.visibility = View.INVISIBLE
toggle = !toggle
}
}
}
.......
}
上述解决方案效果很好,只是想知道它是否是不好的做法?谢谢!
最佳答案
不,这样做没有问题。您的适配器的生命周期与 fragment 的生命周期相关联,因此您这样做不会面临任何内存泄漏或类似情况的风险。
您可能希望通过仅定义该方法的接口(interface)来执行此操作,以便出于关注点分离的原因在两者之间强制执行 API,但这也很好。
关于java - 将 fragment 作为参数传递给 RecyclerView.Adapter 是一种不好的做法吗?帮助点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60160873/
如果您想分享更多信息,可以在这里找到整个资源 指针: https://github.com/sergiotapia/DreamInCode.Net 基本上,我的API将为其他开发人员提供
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 5 年前。 Improve this qu
我不是 SCM 工具的经验丰富的用户,尽管我确信它们的用处,当然。 我在以前的工作中使用了一些不起眼的商业工具,在当前的工作中使用了 Perforce,并在我的小型个人项目中使用了 TortoiseS
所以我想知道一些我应该避免在 javascript 中做的事情以获得良好的 SEO 排名。在我的下一个站点中,我将广泛使用 jquery 和 javascript,但不想牺牲 SEO。那么您认为我应该
基本上,我想知道什么是避免 future CSS 代码出现问题和混淆的最佳方法... 像这样命名 CSS 属性: div#content ul#navigation div.float-left (真
我是一名优秀的程序员,十分优秀!