button按下事件开始播放音乐的问题

本文介绍如何在按下按钮时立即播放音乐,而不是等到手指离开按钮。通过使用setOnTouchListener方法结合MotionEvent.ACTION_DOWN事件实现即时播放,并确保不影响其他操作如更换图片。
摘要由CSDN通过智能技术生成

在播放音乐时我们习惯用button,而且也习惯

Button SoundButton2 = (Button)findViewById(R.id.sound2); 
       
SoundButton2.setOnClickListener(new OnClickListener() { 
 
   
public void onClick(View v) { 
        mSoundManager
.playSound(2); 
 
   
} 
}); 
这样你呢 你会发现 你按下去并咩有直接播放,直达你松开

那怎么才可以呢

b.setOnTouchListener(new OnTouchListener() { 
 
           
@Override 
           
public boolean onTouch(View v, MotionEvent event) { 
               
if ( event.equals(MotionEvent.ACTION_DOWN ) ) { 
                    mSoundManager
.playSound(2); 
                   
return true; 
               
} 
 
               
return false; 
           
} 
       
});

这里要注意返回false两个,以便让她接受其他事件

据个例子来说,如果你这个是个Imagebutton你想让他点击的时候既可以换背景 又可以播放音乐

ImageButton SoundButton1 = (ImageButton)findViewById(R.id.sound1); SoundButton1.setImageResource(R.drawable.my_button);

SoundButton1.setOnTouchListener(new OnTouchListener() { 
 
       
public boolean onTouch(View v, MotionEvent event) { 
           
if (event.getAction() == MotionEvent.ACTION_DOWN ) { 
                mSoundManager
.playSound(1); 
               
return true; 
           
} 
 
           
return false; 
       
} 
   
}); 

如果你用上面的代码 你就会发现不能 换图片,只要你吧 return true也会返回成 return false就可以了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值