我已经编写了一个代码来实现android中按钮的onclick事件。 我编写了以下行来在oncreate方法中设置监听器。 我想识别应用程序中按钮的触摸事件。我在android中获得了类强制转换异常。
mybtn [i] .setOnClickListener((OnClick Lisener)this);
对于识别ontouch事件的替代方法,我已经查看了SetKeylistener(),setonkeylistener()和setontouchlistener()方法。但我没有准确使用哪一个。
我想要实现的是TTS应该在触摸按钮时说出数字,并且在键释放时应该将该数字添加到某个文本框中。那么我应该用什么方法来完成这些事情。
答案 0 :(得分:1)
你应该通过这样做来实现这个效果:
mybtn[i].setOnTouchListener(new OnTouchListener()
{
@Override
public boolean onTouch(View arg0, MotionEvent arg1)
{
switch (arg1.getAction())
{
case MotionEvent.ACTION_DOWN:
// Do some stuff
break;
case MotionEvent.ACTION_UP:
// Do some stuff
break;
}
return false;
}
});
答案 1 :(得分:0)
如果使用setOnClickListener,请使用View.OnClickListener。
为了达到你的目的,你可以使用btn.setOnTouchListener并根据MotionEvent做一些事情,比如event.getAction = MotionEvent.ACTION_UP ......
例如:
btn.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_UP) {
}
if (event.getAction() == MotionEvent.ACTION_DOWN) {
}
return false;
}
});
答案 2 :(得分:0)
在您的活动类中实现接口,您希望在按钮上收听该监听器,例如onClickListener
public class A extends Activity implments OnClickListener