想到啥写啥第一期:handler+message

我怕爱的太早我们不能终老 提交于 2020-01-19 16:47:39

想到啥写啥第一期:致力于更简单易懂的代码解决我们安卓小白遇到的问题

这次写点小东西,就是主线程里面的Handler+Message,直接上代码

我们先在最上面去定义一个handler,用于接收待会儿发出的消息

   private Handler handler = new Handler(){
        @Override
        public void handleMessage(@NonNull Message msg) {
            super.handleMessage(msg);
            switch (msg.what){
                case 1:
                    Toast.makeText(Image.this,
                            "测试文本",Toast.LENGTH_SHORT).show();
                    break;
                    default:
                        break;
            }
        }
    };

然后在oncreate()里面写一个发送message的Timer

Timer timer = new Timer();
        timer.schedule(new TimerTask() {
            @Override
            public void run() {
                Message msg = new Message();
                msg.what = 1;
                handler.sendMessage(msg);
            }
        },0,200);
        
        这里三个参数分别是线程做出的动作,
        开始时的延迟时间,
        和动作发生后每隔多长时间去调用run,产生一个永续动作

timer也可以只要前面两个参数,那么就是一次性动作,在延迟之后做完就不做了
timer可以用cancel()取消,它的一些其他方法还请诸君自行研究,应该不会很多

我该去学学Runnable,Thread的知识了,这块还不太懂

日常祝各位好运连连,欧气满满!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!