Android中实现按钮自动隐藏

摘要:
所以我的ZoomControls也实现了自动隐藏功能:

//触摸显示悬浮的按钮
@Override
public boolean onTouch(View v, MotionEvent event) {
    if(!zoomControls.isShown()) {
        //用一个定时器定时
        final Timer timer = new Timer();
        TimerTask task = new TimerTask() {
            @Override
            public void run() {
                Message message = new Message();
                message.what = 1;
                handler.sendMessage(message);
            }
            Handler handler = new Handler() {
                public void handleMessage(Message msg) {
                    switch(msg.what) {
                    case 1:
                        if(zoomControls.isShown()) {
                            showView(false);
                            if(timer != null) {
                                //取消Timer
                                timer.cancel();
                            }
                        }
                        break;
                    }
                    super.handleMessage(msg);
                }
            };
        };
        showView(true);
        //以后每3秒,执行一次task
        timer.schedule(task, 3000);
        return false;
    }
    return false;
}
//控制悬浮按钮的显示或消失
public void showView(Boolean boo) {
    if(boo) {
        zoomControls.show();
    }else {
        zoomControls.hide();
    }
}

其实原理也不难,就是用一个Timer定时器定时,TimerTask中用一个线程判断和管理是否显示,通过

Handler发送显示或隐藏的消息。

于是我的ZoomControls也实现了自动隐藏功能:

免责声明:文章转载自《Android中实现按钮自动隐藏》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇将Winform程序及dll打包成可执行的exe用HTTP协议传输媒体文件 学习下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

android——相对布局,表格布局

  1.相对布局       RelativeLayout 又称作相对布局,也是一种非常常用的布局。和LinearLayout 的排列规则不同,RelativeLayout 显得更加随意一些,它可以通过相对定位的方式让控件出现在布局的任何位置。也正因为如此,RelativeLayout 中的属性非常多,不过这些属性都是有规律可循的,其实并不难理解和记忆。...

VC中动态添加控件

动态控件是指在需要时由Create()创建的控件,这与预先在对话框中放置的控件是不同的。 一、创建动态控件:为了对照,我们先来看一下静态控件的创建。放置静态控件时必须先建立一个容器,一般是对话框,这时我们在对话框编辑窗口中,从工具窗口中拖出所需控件放在对话框中即可,再适当修改控件ID,设置控件属性,一个静态控件就创建好了,当对话框被显示时,其上的控件也会显...

和小猪一起搞微信公众号开发—创建自定义菜单

前言 前段时间,微信开放了一个非常牛逼的接口,那就是服务号可以创建自定义菜单了。有了这个接口之后,使用微信与公众号交流倒更像是一个与微信内部的一个app交流,大大的强化了公众号的灵活性。 在编辑模式下,公众号管理者可以直接编辑自定义菜单并设定用户点击菜单之后的回复内容或者跳转的指定链接。本文主要介绍使用开发者模式来自定义菜单完成每个用户的个性化内容回复。...

安卓多线程的实现

有以下几种方式: 1)Activity.runOnUiThread(Runnable) 2)View.post(Runnable) ;View.postDelay(Runnable , long) 3)Handler 4)AsyncTask Android是单线程模型,这意味着Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行,所以你...

Android学习笔记(一)之仿正点闹钟时间齿轮滑动的效果

看到正点闹钟上的设置时间的滑动效果非常好看,自己就想做一个那样的,在网上就开始搜资料了,看到网上有的齿轮效果的代码非常多,也非常难懂,我就决定自己研究一下,现在我就把我的研究成果分享给大家。我研究的这个效果出来了,而且代码也非常简单,通俗易懂。效果图如下: 首先是MainActivity的布局文件,这个布局文件非常简单,就是一个Button:activ...

CSS3 制作一个边框向周围散开的按钮效果

分析 主要还是运用CSS3的transition, animation, transform还有渐变背景等特性。 由于按钮在鼠标进入时有不同的样式,所以要对其:hover状态运用另外的背景样式 通过对按钮的:after状态添加一个内容为空的元素,并给其一个边框,这样在鼠标进入后我们让这个隐藏的空元素变大直到淡出,就得到我们看到的效果了 构建基本按钮样...