Android 仿Nothing登錄頁(Kotlin)

android.jpg

1、Demo預覽

1.gif

2、動畫實現(xiàn)

fun showOrHide(isShow: Boolean) {
        isShowing = isShow
        val valueAnimator: ValueAnimator = if (isShow) {
            ValueAnimator.ofInt(0, (getScreenHeight() * 2f / 3f).toInt())
        } else {
            ValueAnimator.ofInt((getScreenHeight() * 2f / 3f).toInt(), 0)
        }
        valueAnimator.addUpdateListener { a ->
            val value = a.animatedValue as Int
            val params = loginBottomLayout.layoutParams
            params.height = value
            loginBottomLayout.layoutParams = params
            Log.d("addUpdateListener", value.toString())
        }
        valueAnimator.duration = 500
        valueAnimator.setTarget(loginBottomLayout)
        valueAnimator.start()
    }

3、下滑關(guān)閉

loginBottomLayout.setOnTouchListener(object : View.OnTouchListener {
            var lastX: Float = -1F
            var lastY: Float = -1F
            override fun onTouch(view: View?, event: MotionEvent): Boolean {
                when (event.action) {
                    MotionEvent.ACTION_DOWN -> {
                        lastY = event.y
                        lastX = event.x
                        Log.d("ACTION_DOWN", "x:$lastX,y:$lastY")
                    }
                    MotionEvent.ACTION_UP -> {
                        if (Math.abs(event.x - lastX) < 30 && event.y - lastY > 30) {       //向下滑動邏輯,
                            if (isShowing)
                                showOrHide(false)           //關(guān)閉登錄或注冊
                        }
                        Log.d("ACTION_UP", "x:${event.x},y:${event.y}")
                    }
                }

                return true
            }

        })

4、Demo鏈接NothingLogin

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,881評論 25 709
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 15,158評論 4 61
  • 此刻坐在28樓的窗前,心情真的無法訴說。沒考上安醫(yī),突然之間感覺自己像一只泄了氣的皮球,連哭都擠不出淚水了。也許,...
    一口吃成了瘦子閱讀 280評論 1 2
  • 有人說青春就要瘋狂;有人說青春是戀愛季;有人說…… 雖然我是小孩,但我也有自己世界,我的世界是學習,大人的世界是工...
    年少如夢閱讀 148評論 0 0
  • 沒有經(jīng)過長期練習的人,沒有經(jīng)過長期刻意練習的人,想要改變一個舊的模式和習慣,是不可能的。學習五個步驟: 1)初步了...
    朱閃星閱讀 172評論 0 1

友情鏈接更多精彩內(nèi)容