
安卓
文章平均质量分 69
andboby
当前在某世界五百强上市公司担任技术总监及其首席架构师,曾经供职于中兴通讯股份有限公司,担任系统架构师一职;曾经2011年~2017年供职金山软件,从事移动WPS的开发,是android版的WPS核心开发人员,欢迎各位一起学校交流!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
IDEA无效的源发行版: 1.8,解决方案
无效的源发行版: 1.8原创 2017-02-24 10:32:19 · 5340 阅读 · 0 评论 -
AIDL详解之AIDL基础
本技术博文计划分为三个系列: 一、AIDL的基础。 二、AIDL之Messenger. 三、AIDL终极篇之AIDL架构设计。一,AIDL的本质可以从以下来理解。 1、AIDL专门为android中的跨进程通讯设计。通过以下对其他跨进程通讯的几种方式的弱点来解析AIDL的优点。ContentProvider、Broadcast 这两种底层也是通过IBinder来实现,其使用范围为系统级的(重原创 2017-11-22 11:48:02 · 593 阅读 · 0 评论 -
AIDL详解之Messenger
本技术博文计划分为三个系列: 一、AIDL的基础,http://blog.youkuaiyun.com/wangqiubo2010/article/details/78601666。 二、AIDL之Messenger.。 三、AIDL终极篇之AIDL架构设计。本博文是AIDL系列的第二篇,Messenger。 Messenger的本质,只要记住以下三点即可。 1、Messenger内部已经封装好,原创 2017-11-23 15:10:05 · 382 阅读 · 0 评论 -
android 沉浸式标题栏
1、沉浸式标题栏,中心思想就是,自定义的状态栏打通原始系统的,并且增加一个标题栏,如图所示。 2、以上效果分为2部分,第一部分就是和状态栏完全同尺寸的自定义状态栏,第二部分就是和自定义背景颜色一样的标题栏。3、具体代码如下。<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" ...原创 2018-02-11 09:49:25 · 642 阅读 · 0 评论 -
android 自定义表格
本文通过ScrollView 嵌套 ListView来实现滚动表格功能。 实现效果如下图: 如上图所示实现功能如下: 1、列表头 和 数据 可以左右滑动,方便超出屏幕数据查看。 2、行表头 和 数据 可以上下滑动,方便超出屏幕数据查看。 3、左右滑动时 行表头固定,上下滑动时 列表头固定。实现代码如下:package com.uuch.android_zxinglibrary...原创 2018-02-11 16:22:40 · 1585 阅读 · 1 评论 -
自定义PopWindow详解
PopWindow 是一个弹出框,核心方法在以下: a、showAsDropDown(View anchor): 显示在某个控件 anchor的正下方。 b、showAsDropDown(View anchor, int xoff, int yoff): 显示在某个控件anchor的相对位置,xoff 为左右偏移(左正右负),yoff为上下偏移(上负下正)。 c、showAtLocat...原创 2018-02-12 10:42:20 · 688 阅读 · 0 评论 -
Handler运行机制详解
1、android线程间的通讯,都是经过Handler在线程之间的切换。包括耗时任务的结果传送到UI线程等。2、Handler使用包括2种形式,一种是主线程和子线程的交互,另外一种是子线程和子线程之间的交互。3、Handler的创建,主线传入Looper.getMainLooper;如果是在子线程中创建,则需要在Looper.prepare(); 和 Loop.loop之间创建,否则会抛出...原创 2018-04-21 21:48:34 · 651 阅读 · 0 评论 -
MVC 、MVP详解 及其 MVC 在安卓系统中的具体应用
MVC框架MVC是将业务逻辑、界面进行解耦,通过中间的Control对界面数据和操作进行处理,然后将处理结果反馈给业务逻辑层也就是Modle。Modle:业务逻辑层,本层是应用数据的核心,例如数据库和表View:视图层,其是接收用户操作 和对model数据的展示。Control:控制器,接收用户输入和操作,例如增删改成数据库,然后将操作数据录入model。MVC虽然通过control...原创 2018-04-24 17:51:46 · 210 阅读 · 0 评论 -
ListView 和 RecyclerView 比较
1、ListView 与 RecyclerView 均是通过复用ItemView的原理来展示大量数据的控件。 2、ListView 使用了2级缓存,RecyclerView使用了4级缓存,多了对ItemView的缓存mCacheViews和增加一个共用缓存池RecyclerViewPool。 3、 mActiveViews(ListView)和mAttachedScrap(RecyclerVi...原创 2018-04-24 17:51:34 · 377 阅读 · 0 评论 -
android性能优化简谈
1、SparseArray VS HashMap。 SparseArray(稀疏数组).他是Android内部特有的api,标准的jdk是没有这个类的.在Android内部用来替代HashMap原创 2018-03-02 14:21:29 · 150 阅读 · 0 评论 -
android 屏幕适配方式
1、onCreate中setContentView的时候,根据获取的手机设备屏幕参数来选择不同的配置文件。 2、通过android会根据不同的屏幕尺寸来选择不同配置文件夹的配置文件。android 3.2版本之前的。 layout-large,layout。7寸以上的屏幕android系统会选择layout-large定义的配置文件,7寸以下的系统自动加载 layout中的配置文件。...原创 2018-04-24 17:52:28 · 392 阅读 · 0 评论 -
AIDL终极篇之AIDL架构设计
本技术博文计划分为三个系列: 一、AIDL的基础,http://blog.youkuaiyun.com/wangqiubo2010/article/details/78601666。 二、AIDL之Messenger,http://blog.youkuaiyun.com/wangqiubo2010/article/details/78615047.。 三、AIDL终极篇之AIDL架构设计。本文为AIDL设计的终原创 2017-11-24 16:22:53 · 745 阅读 · 0 评论 -
Fragment详解系列二ViewPager
本文章是Fragment详解系列中的第二篇。本文将以一个炫耀式的View切换来详解ViewPager的使用。先来了解下ViewPager的基本使用,ViewPager使用场景即是多个View直接可以进行切换。ViewPager关联的最重要的就是PageTransformer 和 PagerAdapter,后续会进行详解。ViewPager中主要使用的方法解析如下: setOffscreen原创 2017-11-02 15:25:18 · 328 阅读 · 0 评论 -
Fragment详解系列一什么是Fragment
Fragment打算分成3个系列来讲。 系列一,讲解Fragment的基本用法,包括基本定义,Fragment的生命周期,Fragment的常用方法,Fragment的回退栈,Fragment和Activity之间的交互。 系列二,讲解ViewPager的基本用法及其原理。 系列三,讲解FragmentPagerAdapter 和 FragmentStatePagerAdapter使用及其原理原创 2017-09-27 17:53:32 · 1130 阅读 · 0 评论 -
Android项目混淆ProGuard详解
Android项目混淆ProGuard详解原创 2017-05-22 19:40:17 · 611 阅读 · 0 评论 -
View的事件分发机制详解
View事件的分发机制详解。 1、dispatchTouchEvent(Activity) -> dispatchTouchEvent (FatcherViewGroup) -> onInterceptTouchEvent(FatcherViewGroup) -> dispatchTouchEvent ( SonViewGroup) -> onInterceptTouchEvent(SonViewGroup) ..........原创 2017-05-24 01:40:56 · 426 阅读 · 0 评论 -
Android 子线程和UI线程(主线程)的几种交互方式
Android 子线程和UI线程(主线程)的几种交互方式原创 2017-05-25 10:29:05 · 2520 阅读 · 0 评论 -
最全的Activity生命周期
以上截图非常的清晰的展现了3种情况下Activity的生命周期:1、正常的完整生命周期。2、配置了configChanges属性,不重建Activity情况下的生命周期。3、一个Activity启动另外一个Activity必须先之前onPause,然后才会进入另外Activity的生命周期,但是本身自己的OnRestoreceState和Stop不用等待。原创 2017-04-25 19:31:14 · 459 阅读 · 0 评论 -
Binder invocation to an incorrect interface 异常分析
Binder invocation to an incorrect interface 异常分析原创 2017-05-17 12:04:13 · 13015 阅读 · 1 评论 -
安卓Animation深入分析和讲解
安卓Animation 1、Tween补间动画:translate,rotate,scale,alpha 2、Frame动画。AnimationDrawable(资源文件为drawable的文件,标签为 animaton-list),帧动画主要是图片切换。 3、属性动画:包括AnimationSet(属性动画集合),ValueAnimation(只是动画本身,无法设置给属性),ObjectA...原创 2017-06-02 17:53:18 · 342 阅读 · 0 评论 -
Android线程池详解
android中经常会用到多线程,因为安卓中如果5S中没有响应就会出现ANR,因此耗时的任务必须放在子线程中使用。这就涉及到UI线程(main线程)和子线程的交互。其二者之间的交互涉及到Handler,Looper,message。 每次创建线程都有系统资源的开销,不可能无限的创建线程,线程过多最终会带来系统的反应速度下降,因此就必须控制线程数量,控制线程的最好办法就是设计线程池,让线程可以原创 2017-06-22 15:01:49 · 331 阅读 · 0 评论 -
Android自定义控件的自定义属性2种实现方式
本文讲通过一个自定义按钮来讲解自定义控件中的自定义属性的2种实现方式。 首先,本AutoButton实现功能是按钮的文字可以根据自定义的行数对文字进行自动缩放,例如maxLines = 2,那么本按钮无论多少文字,最多只显示2行,当超出2行则字体会进行自动缩放,然后再重新mesure。 1、方式一,直接在引用的自定义控件中设置自定义属性。 贴上代码如下:package com.example.原创 2017-08-14 17:22:37 · 710 阅读 · 0 评论 -
AsyncTask原理详解!
在项目中子线程和UI线程交互过程中,经常会用到AsyncTask,AsyncTask使用场景有网络访问、上传文件等。AsyncTask的核心原理有以下几条,请配合后面详解来理解。 1、 AsyncTask主要使用的4个函数,onPreExecute、doInBackground、 onProgressUpdate、onPostExecute。 2、onPreExecute是在AsyncTa...原创 2017-09-05 18:00:14 · 1735 阅读 · 0 评论 -
Android水波纹的另类实现
本文将以动画形式来实现水波纹效果,核心思想就是点击的时候通过执行一张图片的动画来达到水波纹效果。首选把水波纹效果的代码贴出来,本文使用了三个类,如下。类WaterRippleActivity.javaimport android.app.Activity;import android.os.Bundle;import com.example.kingsoft.CustomAdapter.R;im原创 2017-08-31 15:23:49 · 396 阅读 · 0 评论 -
Cordova混合开发之环境初始化。
1、安装nodejs(自动包含npm)2、在命令行中通过npm语句npm install -g cordova安装cordova(如果提示网络连接失败,需要设置网络代理,搭理网址:npm config --global set registry http://registry.cnpmjs.org)3、在命令行里通过安装成功的cordova,创建一个混合项目,创建语句:cordova...原创 2019-04-15 16:25:42 · 691 阅读 · 0 评论