Android Dev/Android
[Android/Kotlin] Custom ViewPager 1 - Disable Swipe Effect(Not Fling)
서메리
2022. 7. 27. 15:08
ViewPager에서 좌우 Swipe 효과(Fling) 제거하기
CustomViewPager.kt
private var isSwipeEffect = false
fun setSwipeEffect(isEffect: Boolean) {
isSwipeEffect = isEffect
}
override fun onInterceptTouchEvent(ev: MotionEvent): Boolean {
if (isSwipeEffect) {
return try {
super.onInterceptTouchEvent(ev)
} catch (e: java.lang.IllegalArgumentException) {
false
}
} else {
if (ev.actionMasked != MotionEvent.ACTION_MOVE) {
if (super.onInterceptTouchEvent(ev))
super.onTouchEvent(ev)
}
return false
}
}
override fun onTouchEvent(ev: MotionEvent?): Boolean {
return if (isSwipeEffect) {
super.onTouchEvent(ev)
} else {
false
}
}