android - 是否有图像视图的功能,当我们按下图像按钮时它应该显示,如果我们实现按钮,前一个图像应该显示?
问题描述
我正在开发一个对讲机应用程序,因为我正在使用对讲机图像按钮。当我单击该图像时,它应该显示不同的图像,而当我意识到该按钮时,它应该显示上一个图像。波纹管代码 walk1 第一个图像和 walk2 是第二个图像,当单击图像按钮时应该看到
,,,
walk1=findViewById(R.id.walky)
walk2=findViewById(R.id.walky1)
walk1?.setOnLongClickListener {
walk2?.visibility=View.VISIBLE
true // Don't consume event, if return false. Consume event if true.
}
walk2?.setOnClickListener {
walk2?.visibility=View.GONE
}
,,, 在这段代码中它显示第二张图片但是当我意识到按钮它没有显示第一张图片时我再次点击它的时候它显示
解决方案
您可以在视图上使用 setOnTouchListener,然后使用MotionEvent
-
imageView.setOnTouchListener(View.OnTouchListener { view, motionEvent ->
if (motionEvent.action == MotionEvent.ACTION_DOWN) {
imageView.setImageResource(R.drawable.istock)
Toast.makeText(this@MainActivity, "press", Toast.LENGTH_SHORT).show()
} else if (motionEvent.action == MotionEvent.ACTION_UP) {
imageView.setImageResource(R.drawable.wo)
Toast.makeText(this@MainActivity, "release", Toast.LENGTH_SHORT).show()
}
false
})
推荐阅读
- python - Pandas - 根据其他两列的条件填充列值
- flutter - 是否有任何可用的颤振插件来控制在 Android 和 iOS 上工作的设备的媒体音量?
- c# - 是否可以使用 mediatR 处理一个查询但使用不同的处理程序?
- vue.js - google-maps-api-loader vue.js 中的几何库
- python - 类型错误:on_quit() 缺少 1 个必需的位置参数:'self'
- haskell - 如何在基于 package.yaml 的项目中的二进制文件中包含符号信息(DWARF)?
- python - csv 中的浮点数在 Pandas 中自动舍入
- c# - 图像亮度校正
- c# - Action 如何调用具有参数的方法
- node.js - 如何在 Linux 上修复 node-sass“尚不支持您当前的环境”错误