Compose pointerInput key的作用

33 阅读1分钟

maxPx 是常量 offsetPercent 是动态修改的

val maxPx = with(density) {  
maxOffsetDp.toPx()  
}  
val offsetPercent = remember {  
Animatable(0f)  
}

问题 在列表中key1之前设置的Unit,会发现列表靠后的item 当手指左右移动的时候 offsetPercent改变了,但是页面没刷新,每个item都设置不一样的key1 就修复了这个问题

.offset(-maxOffsetDp * offsetPercent.value, 0.dp)
.pointerInput(key1 = it.id) 
   detectHorizontalDragGestures{ _, dragAmount ->
     offsetPercent += dragAmount/maxPx
   }
}