Al desplazarme en un RecyclerView, quiero lograr algo como esto: 
Donde el elemento central se escala más grande que los otros elementos. Encontré una manera de escalar todos los elementos, o lo que se llama un Efecto Carrusel. Pero eso no es lo que quiero. Quiero escalar solo el elemento central y mantener los otros elementos en su tamaño predeterminado.
esto es lo que he encontrado en otras respuestas:
override fun onAttachedToRecyclerView(recyclerView: RecyclerView) { val snapHelper = LinearSnapHelper() snapHelper.attachToRecyclerView(recyclerView) recyclerView.addOnScrollListener(object : RecyclerView.OnScrollListener() { override fun onScrolled(recyclerView: RecyclerView, dx: Int, dy: Int) { val layoutManager = recyclerView.layoutManager!! val midpoint = layoutManager.width / 2f val distance = shrinkDistance * midpoint for (i in 0 until layoutManager.childCount) { val child = layoutManager.getChildAt(i)!! val childMidpoint = (layoutManager.getDecoratedRight(child) + layoutManager.getDecoratedLeft(child)) / 2f val d = Math.min(distance, Math.abs(midpoint - childMidpoint)) val scale = 1 + -shrinkAmount * d / distance child.scaleX = scale child.scaleY = scale } } }) }Como dije, esto escala todos los elementos visibles, donde solo quiero hacer zoom en el elemento central.
Podrías darle al hijo del medio una escala diferente.
Calcule el hijo del medio de childCount y use una escala diferente a las demás.