--Android--
文章平均质量分 92
bt侠
早睡早起,以防猝死...
展开
-
沉浸式状态栏解决方案
前言沉浸式(透明)状态栏是Android4.4及以后的版本出现的,其可以通过改变状态栏的颜色/透明度实现与activity的联动效果,淘宝/京东/qq朋友圈等均实现了沉浸式状态栏的效果.这里一定要提一下StatusBarUtil,此项目为朋友推荐用来参考的项目,本着不重复造轮子的原则,本想着拿来就用,结果: 1. demo在三星note4上面直接就安装失败?API21的也会失败? 2...原创 2018-07-16 19:40:50 · 948 阅读 · 3 评论 -
BtCarousel轮播组件 - 一款易于使用,定制化的轮播组件
BtCarouselA Carousel Easy To Use 项目地址BtCarousel 个人博客 BT SPACE 我的 github演示图片帧数较低谅解~ 背景: 笔者公司的业务代码属于比较定制化的类型,即针对于某一环境所编写的代码,无法进行代码重用,并且如果需求有更改,代码改动量也极其巨大 一直都有想法去编写一些耦合性比...原创 2018-06-30 09:02:16 · 291 阅读 · 0 评论 -
Glide异步加载图片,设置默认图片和错误图片
Glide.with(fragment). load(iconUrl).error( R.drawable.error) //异常时候显示的图片 .placeholder( R.drawable.default) //加载成功前显示的图片 .fallback( R.drawable.blank) //url为空的时候,显示的图片 .into(Icon);//在Req...原创 2018-05-11 16:50:06 · 22903 阅读 · 1 评论 -
Thread的 start() 和 run()
start(): 我们先来看看API中对于该方法的介绍: 使该线程开始执行;Java 虚拟机调用该线程的 run 方法。 结果是两个线程并发地运行;当前线程(从调用返回给 start 方法)和另一个线程(执行其 run 方法)。 多次启动一个线程是非法的。特别是当线程已经结束执行后,不能再重新启动。run(): 我们还是先看看API中对该方...原创 2018-05-09 11:50:19 · 178 阅读 · 0 评论 -
View测量宽高的时机
View的绘制过程View绘制过程为measure(测量),layout(决定位置),draw(绘制) 由于measure方法为final类型,所以我们无法去重写该方法,但是在测量结束后会回调onMeasure方法,在该方法中可以获取到测量宽/高,之所以说是测量,是因为可能由于某种原因导致最后显示出的宽高并不和测量的一致,但是大部分情况下实际高度等于测量宽/高. 不推荐在onMeasure...转载 2018-05-01 21:54:15 · 599 阅读 · 0 评论 -
MarginLayoutParams
创建及使用MarginLayoutParmasMarginLayoutParams是继承自ViewGroup.LayoutParmas,创建时直接new一个对象即可;但一般我们可以这么做: 先获取View本身的LayoutParams对象,检测是否属于一个MarginLayoutParmas对象,如果是直接修改属性值即可;如果不是,需要以原有布局参数对象为基础,创建一个新的Margin...转载 2018-05-01 16:51:56 · 1068 阅读 · 0 评论 -
IPC
IPC是Inter-Process Communication的缩写,含义为进程间通信或跨进程通信,是指两个进城之间进行数据交换的过程.IPC方式的优缺点和适用场景 名称 优点 缺点 适用场景 Bundle 简单易用 只能传输Bundle支持的数据类型 四大组件之间的通信 文件共享 简单易用 不适合高并发场景,并且无法做...转载 2018-05-01 15:47:20 · 305 阅读 · 0 评论 -
Activity生命周期要点
当前Activity A启动一个新的Activity B, B的onResume在A的onPause方法后执行,尽管onPause方法和onStop方法都不能执行耗时操作,相对来说更不要在onPause方法内耗时,因为会影响新的activity的启动时间.所以一般性的数据保存等操作尽量写在onStop方法内.activity异常销毁, 依次调用onPause,onStop,onDestroy方...原创 2018-05-01 11:20:37 · 246 阅读 · 0 评论 -
Android触摸事件的分发机制
参与分发的组件Activity 无onInterceptTouchEvent方法,不进行拦截,直接传递给子view dispatchTouchEvent onTouchEventViewGroup dispatchTouchEvent onInterceptTouchEvent onTouchEventView 无onInterc...原创 2018-05-01 10:07:37 · 138 阅读 · 0 评论 -
service内操作UI
开发过程中需要在service中载入一个view,并且在任何页面内都可以向service发送请求去改变view的显示,由于无法在非主线程中进行UI操作,并且view相关数据在service内,所以必须通过别的方法去操作UI。广播service内部自定义一个广播继承BroadcastReceiver class FloatWindowBroadcastReceiver...原创 2018-05-01 10:02:45 · 1383 阅读 · 0 评论 -
Recyclerview使用与踩坑
使用recyclerview基于v7包,需要现在项目中引入v7或单独引入recyclerview.去除滑动到边缘自带的阴影效果<android.support.v7.widget.RecyclerView ... android:overScrollMode="never"/>recyclerview无自带点和触摸事件,需要自行编...原创 2018-05-01 10:01:59 · 609 阅读 · 0 评论 -
Amdroid代码规范
Android 代码规范文件结构【强制】 源文件应以其最顶层的类名来命名,区分大小写,文件扩展名为.java[1]。【强制】 一个源文件应包含[1]:说明:按顺序,每个部分之间用一个空行隔开。许可证或版权信息(如有需要);package语句;import语句;一个顶级类(仅有一个).【强制】 许可证和版权信息应放在文件的最前面[1]【强制】 package语句应写...原创 2019-09-17 09:35:26 · 846 阅读 · 1 评论