温馨提示:阅读本文前最好简单使用过 Robolectric。 Robolectric 是基于 Junit 的单元测试框架,实现了在 JVM 上测...
先来看一个概念。 函数式接口:函数式接口(Functional Interface)就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口...
先看效果图 可以看到ViewPager随内容的高度平滑改变。 实现原理 要实现ViewPager的高度随ItemView而变化,那么在滚动前需要...
Invokedynamic指令是java7中加入的字节码指令,理解这条指令可以让我们熟悉程序的执行流程,这篇文章将会介绍invokedynami...
开发过程中,有时候需要从网络上下载数据,并刷新界面。 fetchUserInfo是比较耗时的操作,会一直阻塞当前线程直到数据返回。 在andro...
作为一名java语言使用者,使用kotlin已经一年有余。私认为kotlin是java语言的装饰者:在大结构上类似java语言,同时增加了许多j...
协程(Coroutines)作为kotlin语言的新特性,在写这篇文章时,已经发布了稳定版。所以我们可以放心大胆的应用到我们的项目中去了。 一。...
android开发中,布局文件一般写在xml文件中。 在java代码中想要获取渲染出来的view对象,一般是在xml中给view设置一个id,然...
两个注解都是与java互操作相关。 原代码: 对应的java代码: 可以看到name属性属于AnnotationTest类,并且Annotati...