有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何在给定的非活动时间后隐藏视图

基本上我有一个音量按钮,当点击时显示一个隐藏的SeekBar,如何使SeekBar在2或3秒的不活动后再次隐藏

我只是想知道,在不改变进程的情况下,如何检查SeekBar变得可见以来花费了多少时间


共 (1) 个答案

  1. # 1 楼答案

    您可以创建一个Runnable,将SeekBar的可见性设置为不可见:

    private final Runnable hideSeekBarRunnable = new Runnable() {
        @Override
        public void run() {
            seekBar.setVisibility(View.INVISIBLE);
        }
    };
    

    单击音量按钮时,显示SeekBar并以2-3秒的延迟发布Runnable

    seekBar.setVisibility(View.VISIBLE);
    seekBar.postDelayed(hideSeekBarRunnable, 3000);
    

    如果SeekBarRunnable交互(其进度发生变化),则移除挂起的Runnable并重新发布以重置计数器:

    seekBar.removeCallbacks(hideSeekBarRunnable);
    seekBar.postDelayed(hideSeekBarRunnable, 3000);