SeekBar。当停止不触摸手的拇指时如何抓?

时间:2018-11-25 08:25:30

标签: android seekbar

当用户停止移动但没有松开手指时如何捕捉?

示例:

我的应用程序包含用于在花园LED灯上设置亮度的搜索栏(UDP控制),当用户停止在搜索栏上移动拇指时,我只希望发送一个UDP数据包。在停止200ms之后,而不是在onProgressChanged事件上发送一堆数据包。

就像onStopProgressChanged。

可以这样做吗?:

在200毫秒后调用onProgressChanged中的函数,并检查当前位置是否等于最后位置,如果不等于,则设置last_pos = cur_pos。如果值相等,则发送数据包。

您的意见吗?

UPD:

   private Handler seekbar_onchange_handler = new Handler();

...

   public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
       seekbar_onchange_handler.removeCallbacksAndMessages(null);
       seekbar_onchange_handler.postDelayed(() -> checkMoveStopping(progress), 100);
   }

(如何启用lambda表达式-> Android Studio Lambda expressions are not allowed at this language level) ..

   private void checkMoveStopping(Integer progress) {
       if (progress.equals(seekbar_brightness.getProgress())) {

         // user stopped move finger            

       }
   }

这是正确的解决方案吗?

0 个答案:

没有答案