在按钮上同时使用setOnTouchListener和setOnClickListener

我有一个缩小视图大小的函数ACTION_DOWN,并在上将其恢复为原始大小ACTION_UP此功能仅出于美观目的。我在按钮上设置了setOnClickListeners,以便它们(理论上...)可以在按下按钮时执行代码。

private fun scaleButton(theButton:View, grow:Boolean){
    theButton.setOnTouchListener(View.OnTouchListener { v, event ->
        if (event.action == MotionEvent.ACTION_DOWN) {
            v.isPressed = true

            if (grow) {
                v.animate().scaleX(1.04F).scaleY(1.04F).setDuration(50)
            } else {
                v.animate().scaleX(0.97F).scaleY(0.97F).setDuration(50)
            }

        } else if (event.action == MotionEvent.ACTION_UP) {
            v.isPressed = false
            v.animate().scaleX(1.0F).scaleY(1.0F).setDuration(100)
        }
        false
    })
}

问题setOnClickListener永远不会被解决。

onCreate:

scaleButton(button1,false)
scaleButton(button2,true)
scaleButton(button3,false)

button1.setOnClickListener {
    println("Button 1 Pressed")
}
button2.setOnClickListener {
    println("Button 2 Pressed")
}
button3.setOnClickListener {
    println("Button 3 Pressed")
}

如何同时通过动画(触摸)缩放按钮和触发 setOnClickListener

加布·塞尚

您的点击监听器永远不会触发,因为应该将触摸监听器告知系统何时点击了元素。你不是。可以在适当的时间添加performClick,或者将所有内容都放入触摸监听器中并在action_up上单击

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Bulma:无法在按钮上同时使用is-static和is-primary修改

在按钮单击上使用单击事件

在按钮上使用Bootstraps data-spy和data-toggle

使用jQuery onclick功能在按钮上添加和删除活动的类

Android:setOnClickListener之后的setOnTouchListener

根据按钮的值在按钮上使用不同的方法

同时使用复选按钮和按钮

在按钮上添加和删除HTML元素单击React

在按钮和正文上均单击时,“阅读更多”

如何在按钮和单击效果上添加边框?

WPF在按钮上设置边框以淡入和淡出

Box-Shadow 和阴影未显示在按钮上

在按钮上单击时在android中添加片段,并同时向其中添加数据

将鼠标悬停在按钮上,同时仍具有其背后元素的悬停效果

在按钮上单击使用devexpress xtragrid导出到csv

如何使用AngularJS在按钮单击上发布数据

如何使用AngularJS在按钮单击上显示(隐藏的)<td>?

使用Jquery在按钮单击上隐藏/显示Div

使用 C# 在按钮上添加 SQL 查询

如何使用react native在按钮上定义单击区域?

如何使用引导程序在按钮上放置链接?

在按钮上添加数字单击使用jQuery吗?

我将如何使用:: after在按钮上制作箭头?

如何使用React Hooks在按钮单击上获取数据

使用StatusBar将鼠标悬停在按钮上

Angular 2材质在按钮上使用较浅/较深的颜色

如何使用JS在按钮单击上显示不同的div?

使用CSS在按钮单击上左右滑动

使用jQuery在按钮单击上显示弹出窗口