Skip to content

悬浮窗拖动异常 #32

@yzjdev

Description

@yzjdev

大佬您好,目前悬浮窗我发现的问题是: 在按下开始拖动时 浮窗会向右边位移一点距离, 下面是我用ai重写的代码,您看能否采纳 ,至于是否需要减去状态栏高度 目前我测试不需要 不知道有没有什么特殊情况,谢谢

  private val onTouchMoveListener = object : View.OnTouchListener {
        private var initialX = 0
        private var initialY = 0
        private var initialTouchX = 0f
        private var initialTouchY = 0f

        override fun onTouch(v: View?, event: MotionEvent): Boolean {
            when (event.action) {
                MotionEvent.ACTION_DOWN -> {
                    initialX = wmlp.x
                    initialY = wmlp.y
                    initialTouchX = event.rawX
                    initialTouchY = event.rawY
                    return true
                }
                MotionEvent.ACTION_MOVE -> {
                    val deltaX = (event.rawX - initialTouchX).toInt()
                    val deltaY = (event.rawY - initialTouchY).toInt()

                    wmlp.x = initialX + deltaX
                    wmlp.y = initialY + deltaY

                    CoroutineWrapper.launch { AssistsWindowManager.updateViewLayout(viewBinding.root, wmlp) }
                    return true
                }
                MotionEvent.ACTION_UP -> {
                    return true
                }
            }

            return false
        }
    }

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions