我使用这个Android代码,当用户触摸屏幕时,振动开始并持续3000毫秒。我不希望那个用户总是触摸屏幕,振动的持续时间变得与之前的时间相同(3000毫秒)。我想随机使用,每次振动持续一段时间。我应该如何根据我的代码随机使用?
请帮帮我。
public boolean dispatchTouchEvent(MotionEvent ev)
{
if (ev.getAction() == MotionEvent.ACTION_UP)
{
Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
v.vibrate(3000);
}
return super.dispatchTouchEvent(ev);
}
答案 0 :(得分:3)
使用Random
class。
private Random rnd = new Random();
private int randRange(int min, int max) {
return min + rnd.nextInt(max - min);
}
public boolean dispatchTouchEvent(MotionEvent ev) {
if (ev.getAction() == MotionEvent.ACTION_UP) {
Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
v.vibrate(randRange(min, max)); // integer variables of your choice
}
return super.dispatchTouchEvent(ev);
}
请参阅Random.nextInt(int)
的文档,了解为什么我按照我的方式编写randRange
方法,如果它让您感到困惑。