摘要: 对使用市面上的适配方案进行总结,并分析大致原理 基本概念了解 1dp 等于 1/160 英寸(in) Dp用于解决同尺寸下不同分辨率的显示问题,不同尺寸无法解决 常用...
摘要: 对使用市面上的适配方案进行总结,并分析大致原理 基本概念了解 1dp 等于 1/160 英寸(in) Dp用于解决同尺寸下不同分辨率的显示问题,不同尺寸无法解决 常用...
布局中的name 会初始化fragment!
FragmentContainerView中的问题与解决方法FragmentContainerView中的问题与解决方法 一、发现问题 1、错误表现 今天在做一个项目的时候, 发现了一个莫名奇妙的问题。根据官方的建议,使用Fragme...
线性布局,是日常开发中最常用的布局,具备水平方向和垂直方式。本来是想几个布局一起讲解的,后来发现篇幅太长了,所以就单独介绍每一个布局的使用,并且伴随源码一起分析,这篇文章将会...
常量 Java中: Kotlin中: 注:const 关键字用来修饰常量,且只能修饰 val,不能修饰var, companion object 的名字可以省略,可以使用...
在Android中默认所有的View都是直角的,但是大部分的设计师都喜欢按照苹果的风格来设计,也就是会出现很多圆角矩形的设计,对Android工程师来说会造成很多额外的麻烦。...
泛型的协变和逆变是什么?对应于Java当中,协变对应的就是<? extends XXX>,而逆变对应的就是<? super XXX>。 1. 泛型的协变 1.1 泛型协变的使...
Android 消息处理机制估计都被写烂了,但是依然还是要写一下,因为Android应用程序是通过消息来驱动的,Android某种意义上也可以说成是一个以消息驱动的系统,UI...
当在学习跨线程机制 Handler 时,一定会接触到 Message.obtain() 方法 当在学习Message.obtain 时,可能有几个疑问: Message的集合...
1.Java调用Kotlin 那么,很可能是这个包对应Module的build.gradle文件没有配置 applyplugin:'kotlin-android',加上即可 ...
知道是什么,怎么用,源码构成,为什么能这么设计 时间倒计时类 对于抽象类,有两种方式 匿名内部类 继承 内部使用handler 与系统时间进行倒计时,需要进行cancel 回...
by还是静态代理,而需要实现对所有相同行为进行统一代理,还是需要按照java的方式进行动态代理,只是写法不一样
快速上手 Kotlin 开发系列之动态代理本节介绍 Kotlin 中没有反射的动态代理。 Java 中的动态代理 在讲 Kotlin 的动态代理之前先简单回顾下 Java 的动态代理,通过一个简单的例子说明下: 首先...
文章简介AsyncTask 是Android 开发一个常用的多线程异步任务组件。网上资料很多也很杂,所以我决定整理一些关于AsyncTask必须知道的一些知识点,包括基本用法...
目的:建立自己的学习体系 学会如何学习,提高学习效率,提高学习的热情 首先,改变自己的学习方法,不能拿以前的心态来进行学习,比如从头看本书,每次都从第一页进行学习... 学习...
Gradle系列(一):Groovy基础Gradle系列(二):AndroidStudio的Gradle简介Gradle系列(三):项目实践 前言 关于Gradle的文章很多...
厉害厉害
Gradle系列(二):AndroidStudio的Gradle简介Gradle系列(一):Groovy基础Gradle系列(二):AndroidStudio的Gradle简介Gradle系列(三):项目实践 前言 在开发中我们接触的较多的是...
Gradle系列(一):Groovy基础Gradle系列(二):AndroidStudio的Gradle简介Gradle系列(三):项目实践 前言 在开发中我们接触的较多的是...
在阅读本文之前可以先阅读以下三篇,以便对Java中的泛型有一个全局的认识: Java中与泛型相关的接口 之 术语定义 Java中与泛型相关的接口 之 综述 Type及其子接口...
在制作框架的时候,常常一个对象会拥有多种状态 例如:对象为人,含有三种状态,年轻、个高、漂亮需要用到的时候,就再或一下,进行比对原数据,若数据不变,则包含这种状态
通过设置TextWatcher监听,每次SetText之后,会重新调用afterTextChanged , 因此要每次进行判断,反正造成死循环。