2012-10-11 42 views
0

我有一个按钮(button1)和两个声音(sound1,sound2),我想实现这个按钮的一个手势。如果单击Button1,则声音是声音1,但如果按钮1被手势触摸,则声音是声音2。处理声音,我使用SoundManager类。处理触摸我使用多点触摸类。如何在android上实现一个按钮的手势?

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(); 
    } 

}

谢谢你这么多

+0

你的代码看起来很好....你面临的问题是什么? – karn

+0

看看这个问题http://stackoverflow.com/questions/937313/android-basic-gesture-detection – BBdev

+0

问题是我想在button1上添加手势来调用sound2。如果我使用上面的代码,我只能通过点击来调用sound1。我想,当我点击button1时,我希望声音是声音1,但是当我用手势触摸button1时,声音就是sound2。 - 使用谷歌翻译 - – qboel

回答

0

有点击触摸之间没有大的区别。 但是,如果你想实现这两个,你必须做个窍门才能使它工作。

对于系统来说,如果您想“点击”或“触摸”它,很难决定将手指放在按钮上。为了控制这一点,你可以得到时间,按钮被点击/触摸/任何...

例如: 如果你点击/触摸/无论按钮,你开始计算,如果你停止点击/触摸/ whateevring你停止了countig。之后,它很容易:如果(时间< 1秒)其他

请注意,它是一个好主意,有一个Click-Listener和TouchListener与它相同的代码,并只是决定,使用计数的东西。

我已经实现它,它已经完美地工作!

+0

在ouTouch中,您可以处理所有其他事件,只需滚动或单击双击即可处理。但onClick只处理点击 – Nepster

-1

动态创建按钮会引起问题。但是如果化妆在你的xml文件中的按钮,然后设置

相关问题