gpt4 book ai didi

java - 如何知道按钮是否被按下或释放?

转载 作者:行者123 更新时间:2023-12-01 05:50:16 25 4
gpt4 key购买 nike

当我尝试运行 Android 应用程序时遇到一些问题。当我按下并释放主视图上的按钮时,就会出现问题。该应用程序的行为类似于可移植电话(按下按钮即可通话,松开即可停止)。

为了通知按钮被按下或释放,我尝试了两种选择:- 添加一个 onClickListener,- 添加 onTouchListener。

第一个仅查找被按下的按钮,因此这不是一个可行的解决方案。第二种解决方案能够区分推送和发布,所以这是我现在使用的解决方案。代码如下所示:

// Initialise handler for Push To Talk button
Button button = (Button) findViewById(R.id.buttonPTT);
button.setOnTouchListener(new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent me){
switch(me.getAction()){
case MotionEvent.ACTION_DOWN:
Toast.makeText(getApplicationContext(), "PTT pressed", Toast.LENGTH_LONG).show();
// TODO: Activate Push To Talk
break;
case MotionEvent.ACTION_UP:
Toast.makeText(getApplicationContext(), "PTT released", Toast.LENGTH_LONG).show();
// TODO: End Push To Talk
break;
}
return false;
}
});

问题出在开关的 ACTION_UP 情况上。运行时,只有当您按下按钮,移动光标/手指/等,然后释放按钮时,它才会起作用。我想要它做的是按下它,然后能够释放它,而无需移动我的光标/手指/等。

有人有什么想法吗?

最佳答案

没关系,我似乎已经发现了错误。我的 XML 布局文件中似乎仍然设置了 onClick 处理程序,但我忘记将其删除。

无论如何,感谢您花时间阅读本文。

关于java - 如何知道按钮是否被按下或释放?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4897490/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com