Android仿今日头条图片滑动退出效果-Kotlin版
- 在下滑时,随着手指的移动,图片区域跟随移动,并且activity的背景和页码逐渐变的透明
- 滑动距离不超过设定的临界值时,会有回弹效果。
- 滑动超过设置的临界值时,放开手指,页面滑动退出消失
- 图片可以正常放大缩小,页面不跟随手指上下滑动
- 使用了共享元素的页面切换效果
上代码
class SlideCloseLayout(context: Context, attrs: AttributeSet? = null) : FrameLayout(context, attrs) {private var previousX: Float = 0fprivate var previousY: Float = 0fprivate var scrollListener: LayoutScrollListener? = nullinit {background?.alpha = 255}override fun onInterceptTouchEvent(ev: MotionEvent?): Boolean {ev?.pointerCount?.let {if (it > 1) return falseval y: Float = ev.rawYval x: Float = ev.rawXwhen (ev.action) {MotionEvent.ACTION_DOWN -> {previousX = xpreviousY = y}MotionEvent.ACTION_MOVE -> {val diffY = y - previousYval diffX = x - previousXif (diffY <= 0) return falseif (Math.abs(diffX) + 50 < Math.abs(diffY)) {return true}}}}return false}override fun onTouchEvent(ev: MotionEvent?): Boolean {ev?.let {val y = ev.rawYval x = ev.rawXwhen (ev.action) {MotionEvent.ACTION_DOWN -> {previousX = xpreviousY = y}MotionEvent.ACTION_MOVE -> {val d
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
