如何在android上实现按钮手势?
我有一个按钮(button1)和两个声音(sound1,sound2),我想对这个按钮执行一个手势。如果单击按钮1,则声音为sound1,但如果手势触摸按钮1,则声音为sound2。为了处理声音,我使用SoundManager类。为了处理触摸,我使用多点触摸类如何在android上实现按钮手势?,android,gesture,Android,Gesture,我有一个按钮(button1)和两个声音(sound1,sound2),我想对这个按钮执行一个手势。如果单击按钮1,则声音为sound1,但如果手势触摸按钮1,则声音为sound2。为了处理声音,我使用SoundManager类。为了处理触摸,我使用多点触摸类 public class MyActivity extends MultiTouch { public void onCreate(Bundle savedInstanceState) { super.onCreate(saved
public class MyActivity extends MultiTouch {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.myactivity);
SoundManager.getInstance();
SoundManager.initSounds(this);
SoundManager.loadSounds();
Button Button1 = (Button)findViewById(R.id.button1);
Button1.setOnTouchListener(this);
Button1.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
SoundManager.playSound(1, 1);
}
});
}
public void onDestroy()
{
super.onDestroy();
SoundManager.cleanup();
}
}
非常感谢点击和触摸之间没有太大区别。 但是如果你想同时实现这两个功能,你必须想办法让它发挥作用 对于系统来说,很难决定是否要“点击”或“触摸”按钮。要控制这一点,你可以得到时间,按钮被点击/触摸/无论什么 例如: 如果你点击/触摸/任何你开始计数的按钮,如果你停止点击/触摸/什么,你停止计数。之后很容易:如果(时间<1s)其他 请注意,最好有一个具有相同代码的Click Listener和TouchListener,然后使用计数功能进行决定
我已经实现了,它工作得很好 例如,您可以使用GestureListener()处理按钮的不同事件或手势类型(触摸、轻触、滑动…)动态创建按钮会导致问题。但是,如果在xml文件中创建按钮,然后设置为“开”您的代码看起来很好……您面临的问题是什么?看看这个问题,问题是我想在按钮1上添加手势以调用声音2。如果我使用上述代码,我只能通过单击调用sound1。我想,当我点击按钮1时,我想声音是sound1,但当我用手势触摸按钮1时,声音是sound2--使用Google Translate——在ouTouch中,您可以通过滚动或单点双击处理所有其他事件。。但onClick仅处理单击