gpt4 book ai didi

android - 按住按钮时限速功能

转载 作者:行者123 更新时间:2023-11-30 02:28:17 24 4
gpt4 key购买 nike

    // RIGHT BUTTON
Button btnRight = (Button) findViewById(R.id.btnRight);
btnRight.setOnTouchListener(new OnTouchListener() {

@Override
public boolean onTouch(View v, MotionEvent event) {

if(event.getAction() == MotionEvent.ACTION_DOWN) {
API_send_movement("move_right");
} else if (event.getAction() == MotionEvent.ACTION_UP) {
API_send_movement("stop_right");
}
return false; // This will enable players to drag their finger
}

});

目的:让玩家将手指向上、向左和向右拖过一些按钮。这就是它返回 false 的原因。

效果很好!

问题:我如何“限制”这个?目前它每刻发送一个信号,需要放慢速度,比如每 0.5 秒一次。

最佳答案

一个简单的方法是设置一个long lastCall;变量来存储最后一次API_send_movement("move_right");被调用的时间,如果有时间差则立即返回不够大。沿线的东西:

// RIGHT BUTTON 
Button btnRight = (Button) findViewById(R.id.btnRight);
btnRight.setOnTouchListener(new OnTouchListener() {
long lastCall;

@Override
public boolean onTouch(View v, MotionEvent event) {
if(lastCall + 500 > System.currentTimeMillis()) {
return false;
}

lastCall = System.currentTimeMillis();
if(event.getAction() == MotionEvent.ACTION_DOWN) {
API_send_movement("move_right");
} else if (event.getAction() == MotionEvent.ACTION_UP) {
API_send_movement("stop_right");
}
return false; // This will enable players to drag their finger
}

});

关于android - 按住按钮时限速功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27632119/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com