排序:
默认
按更新时间
按访问量

ConstraintLayout使用说明

刚学Android那会,Android是有五大布局的:FrameLayout、LinearLayout、RelativeLayout、AbsouteLayout、TableLayout。现在为止,Android的布局家族得到了扩充,现在在公司做项目使用的最多的是ConstraintLayout,之...

2018-11-03 16:06:18

阅读数:90

评论数:0

自定义Material点击效果的View

最近在做项目的时候,遇到一个需求,需要自定义一个View;写到布局文件里面,希望也有Material的波纹点击效果,需要怎么弄呢? ?attr/selectableItemBackground 将该View的background属性设为标题的样式即可,这样在5.0以上就有了波纹效果,在5.0以上就...

2018-09-24 09:01:11

阅读数:31

评论数:0

APK重命名插件

Android打包流程的结果是一个apk文件,而apk的命名默认使用的是(module-name)+(build-varints)+(build-type).apk,是不是经常能见到app-debug.apk,这是因为使用AS新建一个项目时,默认module名是app,然后直接使用as的run工具...

2018-09-06 21:55:07

阅读数:74

评论数:0

开发Gradle插件并上传至本地maven库流程

作为一个Android开发者,知道gradle是用来构建Android项目的,一开始在学校的时候,没怎么关注并使用过gradle,现在工作发现gradle配置、插件等等,是一个很强大的工具。因此就开始了学习之路,这边介绍一下如何使用idea开发一个Gradle插件并将其上传至本地maven库,这样...

2018-08-12 10:50:25

阅读数:213

评论数:0

EventBus源码分析之线程分发

EventBus的线程分发中介绍了EventBus中发布和订阅方法设置了ThreadMode之间的关系,最终表格如下: 发布线程 Android主线程 非Android主线程,线程a POSTING Android主线程 非Android线程,线程a ...

2018-08-02 19:03:05

阅读数:67

评论数:0

EventBus源码分析之订阅-发布模型

EventBus事件总线模式如下图: 本文主要从两个方面介绍源码: 1. 订阅者是如何注册到事件中心的; 2. 发布者发布了事件之后,事件中心是如何将事件调用到合适的订阅方法的。 订阅者注册到事件中心 订阅者注册到事件中心需要调用如下代码: EventBus.gtet...

2018-07-26 20:00:38

阅读数:72

评论数:0

EventBus配置、粘性事件、优先级和取消事件分发

EventBus配置 前面的博客中获取EventBus,都是使用EventBus.getDefault(),而如果需要对EventBus进行配置,那么需要使用EventBus.Builder进行设置。 EventBus eventBus = EventBus.builder() ...

2018-07-23 19:42:43

阅读数:301

评论数:1

EventBus的线程分发

EventBus支持线程分发,在上一篇博客EventBus简介以及初步使用中,了解到EventBus的使用主要涉及事件发送者,以及事件订阅者;对于发送和订阅这两个行为,可以在不同的线程中,这就是EventBus的线程分发。关于线程的设置,可以在订阅方法中使用@Subscribe注解进行线程的调节,...

2018-07-10 21:04:25

阅读数:135

评论数:0

EventBus简介以及初步使用

EventBus简介 EventBus是一个Android和Java的发布/订阅事件总线模型,其模型图如下所示: EventBus的优点有: 1. 简化组件之间的通信 2. 简化代码 3. 快速,小巧(~50K jar) 4. 具有线程分发、订阅优先级等高级特性 从模型图中可...

2018-07-09 19:59:28

阅读数:71

评论数:0

非科班生的Android秋招求职经历

拼多多 学霸提前批Android研发工程师 offer笔试基于给定接口实现ImageLoader框架一面 自我介绍 静态变量和实例变量的区别 重写equals()方法的注意事项;两个list是怎么判断是否相等的? HashTable和HashMap的区别;是否允许键为null 数据...

2017-10-20 10:18:47

阅读数:1886

评论数:1

Java的finally关键字

一般用于释放资源,比如IO流。 finally用来做什么对于没有垃圾回收和析构函数自动调用机制的语言来说,finally非常重要。它能使程序员保证:无论try块里发生了什么,内存总能得到释放。 当要把除内存之外的资源恢复到它们的初始状态时,就要用到finally子句。 在异常没有被当前的异常...

2017-10-11 10:57:04

阅读数:415

评论数:0

CopyOnWriteArrayList源码分析

概述Java自1.5后提供了两个写时复制的容器,分别是CopyOnWriteArrayList和CopyOnWriteArraySet。其思路就是在执行会改变底层数据的结构时,首先加锁,然后复制得到一个新的数据,在这个数据上做修改,最后再将原来的数据引用指向这个新的数据,最后释放锁;而读操作则不需...

2017-09-27 14:57:32

阅读数:334

评论数:0

生命游戏Java实现

关于生命游戏之前在学校看到ThoughtWorks举办的线下结对编程的比赛一等奖是大疆无人机,冲着无人机就拉着实验室小伙伴马总一起报了个名。然后题目就是实现一个界面版的生命游戏,所以才了解了生命游戏。 关于生命游戏,可以参考维基百科。 下图是效果图: 规则生命游戏中,对于任意细胞,规则如...

2017-09-19 14:46:25

阅读数:3233

评论数:0

Android UI测试之Espresso使用

暑假实习的单位,被分到了一个测试组,因为我是搞android开发的,所以被分到了自动化测试小组,所以了解了一些UI自动化测试。主要就是看了下官方文档关于UI自动haul测试的介绍以及一些框架,比如Appium。这篇博客主要讲解官方推荐的方案——Espresso。 为什么需要UI自动化测试?我有一...

2017-09-12 10:08:13

阅读数:1554

评论数:0

2017春招实习-Android开发面经-bat,td等公司

远景能源 Android开发一面 RxAndroid的好处 举一个RxAndroid好处的使用场景 MVP模式与MVC模式 MVC模式与MVP模式的区别 项目中是如何划分M、V、P V与P的对应关系是怎么样的 ListView在MVP的使用,如何分配M、V、P层 项目分工 Git使...

2017-09-07 17:18:40

阅读数:3263

评论数:0

TreeMap源码分析

TreeMap是NavbagableMap的实现,底层基于红黑树。这个Map按照Comparable将键值排序,或者按照在创建Map时提供的Compartor。 TreeMap的类继承关系图如下: TreeMap与HashMap的一个重要区别是:TreeMap不支持键Comparable与...

2017-09-04 09:06:21

阅读数:442

评论数:0

深入理解Callable

概述Callable和Runnbale一样代表着任务,区别在于Callable有返回值并且可以抛出异常。其使用如下: public class CallableDemo { static class SumTask implements Callable<Long> { ...

2017-08-22 18:34:42

阅读数:14736

评论数:0

Kotlin——数据类和密封类

数据类有些类只是用来持有数据的。在这样的类中,一些标准的函数通常是从数据中推导出来的。在Kotlin中,这些类成为数据类并且以data作为标记: data class User(val name: String, val age: Int)编译器自动从主构造器中的属性导入下面这些成员函数: -...

2017-08-17 18:41:04

阅读数:1061

评论数:0

Kotlin——抽象类和接口

抽象类一个类和它的一些成员可以声明为abstract。类中抽象的成员没有实现。需要注意的是,我们不需要用open显式注解抽象类或函数。 我们可以用一个非抽象的open函数覆写一个抽象的函数。 open class Base { open fun f() { } }abstract...

2017-08-07 18:56:01

阅读数:843

评论数:1

JDK1.7ConcurrentHashMap源码分析

机制:分段加锁 SegmentSegment的定义如下: /** * Segments are specialized versions of hash tables. This * subclasses from ReentrantLock opportunistica...

2017-07-31 18:29:07

阅读数:482

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭