Android启动应用时屏蔽RecyclerView滑动,延时后再允许滑动,Kotlin
Android启动应用时屏蔽RecyclerView滑动,延时后再允许滑动,Kotlin
var bCanScrollVertically = false lifecycleScope.launch(Dispatchers.Default) { repeatOnLifecycle(Lifecycle.State.CREATED) { Log.d(TAG, "Lifecycle.State.CREATED") delay(8000) //延迟一定时间才允许用户滑动recyclerview bCanScrollVertically = true Log.d(TAG, "repeatOnLifecycle delay 结束") } } val layoutManager = object : LinearLayoutManager(this) { override fun canScrollVertically(): Boolean { return bCanScrollVertically } } val gestureDetector = GestureDetector(this, object : GestureDetector.SimpleOnGestureListener() { override fun onFling(e1: MotionEvent?, e2: MotionEvent, velocityX: Float, velocityY: Float): Boolean { if (!bCanScrollVertically) { Toast.makeText(applicationContext, "请耐心等待几秒再滑动", Toast.LENGTH_SHORT).show() } return super.onFling(e1, e2, velocityX, velocityY) } }) rv.setOnTouchListener(object : View.OnTouchListener { override fun onTouch(v: View?, event: MotionEvent?): Boolean { if (!bCanScrollVertically) { gestureDetector.onTouchEvent(event!!) } return false } }) layoutManager.orientation = LinearLayoutManager.VERTICAL rv.layoutManager = layoutManager
Android RecyclerView GestureDetector SimpleOnGestureListener,kotlin-CSDN博客文章浏览阅读428次。Android RecyclerView单击、长按事件:基于OnItemTouchListener + GestureDetector标准实现Android RecyclerView虽然拥有ListView绝大多数的功能,但Android RecyclerView却没有实现像ListView那样的点击事件、长按事件的标准实现方式,我在附录文章1中介绍的方式,实现了典型的RecyclerView。https://blog.csdn.net/zhangphil/article/details/130506750Android:GestureDetector.SimpleOnGestureListener,onFling,onScroll,velocityX,Y&distanceX,Y,kotlin_simpleongesturelistener onscroll-CSDN博客文章浏览阅读338次。Android不用OnScrollListener采用GestureDetector结合OnTouchListener实现ListView下拉/上拉刷新通常Android的ListView的下拉/上拉刷新实现,使用OnScrollListener比较简单,比如如果要实现下拉见顶刷新,思路是在OnScrollListener判断当前ListView的滚动状态,如果滚动停止,则将此时Lis。_simpleongesturelistener onscroll
https://blog.csdn.net/zhangphil/article/details/130812011