我有一个包含进度条的回收站视图
我正在用此动画对这些进度条进行动画处理
fun setProgresAnim(progress: ProgressBar, value: Int) {
val anim = ProgressBarAnimation(progress, 0, value)
anim.duration = 2000
progress.startAnimation(anim)
}
这是适配器中的MyViewHolder
inner class MyViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
fun bind(deviceScan: DeviceScan) {
if (deviceScan.percentage > 0) {
itemView.title.text = deviceScan.name
itemView.tv_percentage.text = deviceScan.percentage.toString() + "%"
setProgresAnim(itemView.progress, deviceScan.percentage)}}}
问题是当我上下滚动动画时再次重新启动。
我想做一次这个动画。
答案 0 :(得分:0)
您应该避免在setProgresAnim(itemView.progress, deviceScan.percentage)
中调用onBindViewHolder
,因为每次您向上或向下滚动时,它都会再次调用您的动画。最好在RecyclerView
适配器之外调用它。