240 发简信
IP属地:浙江
  • 120
    自定义View的文字居中处理

    自定义View中想要实现文字的居中处理,首先要了解文字绘制的基准和文字的边界 如图所示圆圈在屏幕中心,而文字在圆的中心。当我们直接调用drawText 获得文字高度的方法 使...

  • Retrofit源码分析

    Retrofit是用在网络请求中非常常用的一个库,这里从2.5.0版本的源码去分析一下它的工作机制。看看它实际做了什么事情以及和okhttp的关系。由于本人水平有限,不喜勿喷...

  • 120
    App使用OAuth 2.0授权码模式授权的过程分析

    OAuth是一个关于授权的开放标准,在无需用户账户和密码的情况下,允许用户让第三方应用访问该用户在某一网站上存储的私密资源(比如头像、昵称、性别等),目前最新的版本是2.0。...

  • Android嵌套滑动讲解

    在Android的事件分发机制里面,当一个View决定消耗事件流时,其它的View就不能再处理这个事件流的了,所以对于有嵌套滑动的地方就要用到NestedScrollingP...

  • 简析View工作的调用流程

    我们都知道Activity的生命周期流程,我们也知道View绘制的三个方法onMeasure、onLayout、onDraw。但是你知道在启动一个Activity时,它们是工...

  • 120
    ViewRootImpl源码分析事件分发

    前面讲到View与WindowManager与ViewRootImpl中只讲到了ViewRootImpl是如何触发View的绘制的,但ViewRootImpl的功能可不只是绘...

  • synchronized用法的分析和总结

    在多线程环境中并发访问资源时会产生不可预料的结果,防止这种冲突的产生是当资源被一个任务使用时,在其上加锁。第一个访问某个资源的任必须锁定这个资源,使其它任务在资源未被解锁之前...

  • 120
    Mac 系统 Tomcat 配置

    Tomcat 是由 Apache 软件基金会下属的Jakarta项目开发的一个 Servlet 容器,按照 Sun Microsystems 提供的技术规范,实现了对 Ser...

  • 120
    Google TagManager概念梳理(Android)

    概述 跟踪代码管理器是一个代码管理系统,可以轻松地更新移动应用上的代码和代码段被触发的时机,在有预先埋点的情况下,完成对第三方sdk代码或自定义代码逻辑的“动态”管理。 例如...

  • @尹star 不行啊,没反应,下拉不了

    SwipeRefreshLayout无法下拉刷新了

    某次项目上线前,QA的妹纸忽然发现一个严重的bug,列表无法进行下拉刷新了。使用场景是当前列表数据为空,或者请求失败时,又没有加载到缓存数据的情况,也就是EmptyView页...