覆盖PerfomClick Kotlin

时间:2018-04-07 20:58:58

标签: android kotlin ontouchlistener

我试图在editText中获得一个drawableLeft交叉图标,以清理它,但我不知道如何在kotlin语言上覆盖perfomClick()方法,因为看起来kotlin并没有识别出perfomclick。这是onTouch事件的覆盖代码。

override fun onTouch(v: View, event: MotionEvent): Boolean {
            super.onTouchEvent(event)

            when(event.action){
                MotionEvent.ACTION_UP -> {
                    Log.i("TAg", "Action Up")
                    et_email.performClick()
                    if(event.getRawX() >= (et_email.getRight() - et_email.getCompoundDrawables()[2].getBounds().width())) {
                        et_email.setText("")
                        Log.i("TAg", "Action Up")
                        return true
                    }
                }

                MotionEvent.ACTION_DOWN -> {
                    Log.i("TAg", "Action Down")
                    et_email.performClick()
                    return true
                }
            }

            return false
        }

当我像这样调用setOnTouchListener时,警告出现在onCreate方法中。

et_email.setOnTouchListener(this)

1 个答案:

答案 0 :(得分:0)

要覆盖perfomClick(),请使用:

override fun performClick(): Boolean {
    super.performClick()
    // your logic here
    return true // or return false, if you like
}