Skip to content

Instantly share code, notes, and snippets.

@bagrusss
Created August 5, 2017 15:35
Show Gist options
  • Save bagrusss/40d28f017befa3e8420c1f300fa68898 to your computer and use it in GitHub Desktop.
Save bagrusss/40d28f017befa3e8420c1f300fa68898 to your computer and use it in GitHub Desktop.
example
// scroll initialization
cropFormPicker = binding.cropFormPicker
cropFormAdapter = CropFormAdapter(viewModel)
cropFormPicker.adapter = cropFormAdapter
cropFormPicker.setItemTransformer(ScaleTransformer.Builder()
.setMaxScale(1f)
.setMinScale(0.5f)
.setPivotX(Pivot.X.CENTER)
.setPivotY(Pivot.Y.CENTER)
.build())
cropFormPicker.addScrollStateChangeListener(cropFormAdapter)
class CropFormAdapter(private val vm: CropViewModel) : RecyclerView.Adapter<FormViewHolder>(), DiscreteScrollView.ScrollStateChangeListener<FormViewHolder> {
...
override fun onScrollEnd(holder: FormViewHolder, position: Int) {
holder.activateForm()
}
override fun onScrollStart(holder: FormViewHolder, position: Int) {
Log.logger.d("CropFormAdapter", "onScrollStart() $position")
}
override fun onScroll(scrollPosition: Float, currentHolder: FormViewHolder, newCurrentHolder: FormViewHolder) {
Log.logger.d("CropFormAdapter", "onScroll() currentHolder = ${currentHolder.adapterPosition} newCurrentHolder = ${newCurrentHolder.adapterPosition} scrollPosition = $scrollPosition")
}
...
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment