2019-07-21 第三周

2019-08-04  本文已影响0人  做梦枯岛醒

今天是8月4号,现在开始写第三周……
最近也是很多事情,一直到周末才会准备一个周的记录,突然有接到消息说下周开始要开始996了,我不知道该怎么形容这个事情,只能说给我的时间越来越少了,所以我要抽时间来做自己的事情了。

在学校时候,我特别害怕一个人吃饭,害怕孤独。
没想到现在生活给了我一记狠狠的耳光,一个人苦笑着点餐吃饭,坐车回家;有些时候甚至怀疑生活中到底应不应该有这样的情节。

总会过去的。
对吧。
北漂少年。

1. 小tip

countDownTimer的使用

在开发中,我们经常要用到计时器,而系统中有很多计时器可以用,同时我们也可以用RxJava等框架来实现,这里我介绍一个countDownTimer。

private TextView tv;
    private CountDownTimer timer = new CountDownTimer(10000, 1000) { 
        @Override
        public void onTick(long millisUntilFinished) {
            tv.setText(millisUntilFinished / 1000);
        }
 
        @Override
        public void onFinish() {
            tv.setText("结束");
        }
    };

使用: timer.start();

其中,我们完全不用担心子线程的问题,因为内部已经封装了切换线程的逻辑。
这里需要注意的点就是构造方法的两个参数,其中第一个是总时间,10000毫秒,也就是10s,第二个1000毫秒,也就是1s,是时间间隔。这里的意思就是 10s种倒计时,以1s为单位。onTick方法中的参数millisUntilFinished是总时间的剩余时间。

获取activity view

不知道Activity布局构造的小伙子可以参考一下我的另一篇文章。
因为Activity的下一层是一个Window,Window里面是DecorView,而DecorView里又有下一层……

所以我们要获取我们设置的layout view就要一层一层的找下去。

public static View getContentView(Activity ac){
     //获取DecorView
       ViewGroup view = (ViewGroup)ac.getWindow().getDecorView();
     //获取android.R.id.content(也就对应着content的父布局)
       FrameLayout content = (FrameLayout)view.findViewById(android.R.id.content);
    // content里面只有一个孩子,就是contentView,也就是我们设置的布局。
       return content.getChildAt(0);
}

2. 文章分享

上个周解决服务兼容的问题,用到了AsyncTask,但是出现了不少问题,后来又换成了Rx去实现,但是还是要分析一下,下面这篇文章是我在踩了几个坑之后写的。
AsyncTask使用要点

3. 新技术

继续分享Flutter。
这次带来的是上次的后续,对于Hello World的一个扩展,主要讲了项目中的各个文件夹的作用。
项目结构

4. 总结

感觉这是一篇水文,但是我写这个说实话就是为了总结我这个周干了什么,比如说上面的文章分享,就是我在本周工作之余总结出来的内容,我希望每个周都能抽出时间总结这些内容,等到真的抽不出时间的时候,就落下更多了。
后期时间确实会有点紧张,内容会相应减少。

自娱自乐。

上一篇 下一篇

猜你喜欢

热点阅读