![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
安卓
vshot
这个作者很懒,什么都没留下…
展开
-
浅析activity的四种启动模式
1.standard默认的启动模式,每次都会在栈内新启动一个新的activity。2.singletop当启动activity时,若当前activity处于栈顶,则会复用这个activity,不启动新的activity,会调用Activity.onNewIntent()。3.singletask当启动activity时,若栈内一直存活着这个activity,则会复用,会调用Activit...原创 2019-02-14 16:15:13 · 127 阅读 · 0 评论 -
AsyncTask 源码分析
AsyncTask 内部实现原理主要是两个线程池和一个handler。两个线程池分别为SerialExecutor和ThreadPoolExecutor。其中SerialExecutor是维护一个有序队列;ThreadPoolExecutor是执行任务的线程池。handler是InternalHandler 执行异步操作的。1.首先我们先来看下AsyncTask 的构造方法。 pu...原创 2019-05-09 14:24:15 · 143 阅读 · 0 评论 -
安卓造成内存泄漏的几个原因
1. 静态变量引起的内存泄露 public class CommUtil { private static CommUtil instance; private Context context; private CommUtil(Context context){ this.context = context; }...原创 2019-03-28 09:32:58 · 310 阅读 · 0 评论 -
安卓中的布局优化之clude、merge、ViewStub
1.includeinclude标签常用于将布局中的公共部分提取出来供其他layout共用,以实现布局模块化,也是平常我们设计布局时用的最多的。需要注意的是如果一个根布局引入多个include需要每个include加上id的属性,在代码中使用的时候要先通过id找到inclued标签。include_text_relative.xml<LinearLayout xmlns:andro...原创 2019-03-26 15:39:08 · 274 阅读 · 0 评论 -
安卓中的差值器和估值器
1.差值器TimeInterpolator从名字上可以看出,这个是跟时间有关的,差值器只是能修改速率的一种东西。比如,匀速,快到慢,慢到快,快慢快或者慢快慢。安卓本身提供给我们两个内置的差值器1.匀速插值器:LinearInterpolator2.先加速再减速 插值器:AccelerateDecelerateInterpolator自定义差值器public class Decele...原创 2019-03-21 15:58:25 · 564 阅读 · 0 评论 -
安卓中图片的压缩
在讲压缩的方法之前我们先来了解两个概念1.图片的存在形式是三种:1.文件的形式。(以二进制流存在于硬盘中)2.流的形式。(以二进制流存在于内存中)3.bitmap位图形式。2.图片常用的压缩格式:1.ALPHA_8 表示8位Alpha位图,即A=8,一个像素点占用1个字节,它没有颜色,只有透明度2.ARGB_4444 表示16位ARGB位图,即A=4,R=4,G=4,B=4,一个...原创 2019-03-07 15:57:37 · 137 阅读 · 0 评论 -
synchronized关键字
synchronized关键字能作用的范围有类,方法,静态方法,代码块。1.类锁和静态方法锁,锁的都是类的对象。2.方法,和代码块锁锁的都是类。相当于锁的有两个种类,一种是对象锁,一种是类锁。关于“实例锁”和“全局锁”有一个很形象的例子:pulbic class Something { public synchronized void isSyncA(){} public...原创 2019-02-26 15:23:00 · 100 阅读 · 0 评论 -
安卓中的事件分发
我们先从分发的对象以及作用的方法讲起典型的事件有以下三种:ACTION_DOWN:手指刚接触屏幕的瞬间、ACTION_MOVE:手指在屏幕上滑动、ACTION_UP:手指刚离开屏幕的瞬间。事件分发的三个对象:activity、viewgroup、view。作用的三个方法:dispatchTouchEvent()、onInterceptTouchEvent()、onTouchEvent()。...原创 2019-02-26 10:13:39 · 446 阅读 · 0 评论 -
通透的分析handler的工作流程
Handler的使用主线程中使用handlerstatic class MyHandler extends Handler { WeakReference<Activity > mActivityReference; MyHandler(Activity activity) { mActivityReference= new WeakRefe...原创 2019-02-20 15:15:16 · 153 阅读 · 0 评论 -
浅谈Service
前言Service是安卓四大组件之一,一般用于开启后台服务(音乐播放,和后台下载)。Service的两种生命周期一种是通过startService()开启的服务: onCreate()→onStartCommond()→onDestroy()另一种是通过bindService()开启的服务:onCreate()→onBind()→onUnBind()→onDestroy()如果使用sta...原创 2019-02-14 11:38:29 · 116 阅读 · 0 评论 -
安卓按home健后从后台返回前台
这是一个从后台返回前台需要验证手势密码中提取出来的代码首先判断程序是否处于后台 /** * 判断当前应用程序处于前台还是后台 */ public static boolean isApplicationBroughtToBackground(final Context context) { ActivityManager am = (Activity...原创 2019-02-19 17:38:44 · 419 阅读 · 0 评论 -
一个简单的环形渐变色进度条
1.首先在values里设置下自定义控件的属性 <?xml version="1.0" encoding="utf-8"?><resources> <declare-styleable name="RingProgress"> <!--画笔宽度--> <attr name=&quo原创 2019-02-19 10:45:47 · 2164 阅读 · 2 评论 -
安卓自动吸附,可拖动悬浮窗
import android.animation.ObjectAnimator;import android.content.Context;import android.util.AttributeSet;import android.view.LayoutInflater;import android.view.MotionEvent;import android.view.Vi...原创 2019-07-11 10:34:35 · 4105 阅读 · 0 评论