Android
haizishiwo
这个作者很懒,什么都没留下…
展开
-
Android中的羊角符
简介 人民币羊角符是现在APP常使用的符号,有人会问,这个符号不是很简单吗?键盘结合输入法一敲就有了啊!当然,问题不会这么简单。 为什么强调“人民币”三个字呢?因为日元也是用羊角符,并且两者长得非常相似!我想问一下APP开发的码农们,你们用的人民币羊角符对吗?原创 2016-04-02 21:48:04 · 11565 阅读 · 1 评论 -
Android Context 上下文 你必须知道的一切
其实一直想写一篇关于Context的文章,但是又怕技术不如而误人子弟,于是参考了些资料,今天准备整理下写出来,如有不足,请指出,参考资料会在醒目地方标明。转载 2017-07-16 16:44:29 · 368 阅读 · 0 评论 -
置顶RecyclerView
简介置顶:如果要一个View滑动到顶部,然后置顶,保持不动;滑动回来,跟随RecyclerView一起滚动。最近对原有框架进行技术改造,ListView要换成RecyclerView,RecyclerView确实要比ListView灵活、可定制。之前给予ListView置顶方案要移到RecyclerView上面,这次只做了一个View的置顶,针对之前的置顶技术实现进行了调整,ListView置顶方案原创 2017-07-16 16:16:39 · 593 阅读 · 0 评论 -
RecyclerView 的坑 1 Added View has RecyclerView as parent but view is not a real child. Unfiltered in
前言最近在用ReyclerView写模块化页面,每个模块视图部分作为一个小的Aapter,会发现一些RecyclerView的坑,在博客中进行一些总结,保持更新。1、问题出现打开RecyclerView页面,快速滚动crash Added View has RecyclerView as parent **“Added View has RecyclerView as parent but v原创 2017-07-13 23:49:54 · 2999 阅读 · 1 评论 -
Android Service总结
参考文章Android总结篇系列:Android Service 【Android】远程服务(Remote Service)的使用 Android四大组件:Service服务史上最全面解析 startService与bindService的区别为什么要有Service在现实世界的工作中,我们做一件事情的完整过程:领导指示做什么事、去执行、保存成果、报告完成,抽象之后:交互、执行、存储、通信四个原创 2017-06-03 23:30:19 · 318 阅读 · 0 评论 -
Android 通信方式总结
Android通信方式总结原创 2017-06-03 19:34:56 · 483 阅读 · 0 评论 -
Android 打点方式总结
打点的痛点打点是由用户操作,引起视图变化,在记录视图变化时的业务数据信息,以供产品、运维分析。所以打点既包括视图逻辑,也包括业务逻辑,这是蛋疼的地方。我们在开发的时候,一直致力于业务逻辑和视图逻辑要分离,而打点非要将他们糅合在一起……原创 2017-06-18 21:49:21 · 10894 阅读 · 2 评论 -
Android APP启动关键流程分析
前言本文简要分析一下Android APP启动关键流程,APP从被点击到启动中间流程很多,可以参考老罗的《Android应用程序启动过程源代码分析》。原创 2017-05-29 18:56:31 · 664 阅读 · 0 评论 -
Android 线程模型和Looper深入理解
1、Android的单线程模型当APP启动时,AMS会通过守护进程为APP创建一个独立的进程,在他的静态ActivityThread的静态main方法中启动这主线程(Main Thread)并创建ActivityThread。主线程主要负责处理与UI相关的事件,如:用户的按键事件,用户接触屏幕的事件以及屏幕绘图事件,并把相关的事件分发到对应的组件进行处理。所以主线程通常又被叫做UI线程。如果他线程要原创 2017-05-30 01:33:29 · 798 阅读 · 0 评论 -
文章标题
虽说现在做网络请求有了Volley全家桶和OkHttp这样好用的库,但是在处理其他后台任务以及与UI交互上,还是需要用到AsyncTask。但是你真的了解AsyncTask吗?AsyncTask的实现几经修改,因此在不同版本的Android系统上表现各异;我相信,任何一个用户量上千万的产品绝对不会在代码里面使用系统原生的AsynTask,因为它蛋疼的兼容性以及极高的崩溃率实在让人不敢恭维。本文将带你转载 2017-06-05 00:27:21 · 193 阅读 · 0 评论 -
你真的了解AsyncTask?
虽说现在做网络请求有了Volley全家桶和OkHttp这样好用的库,但是在处理其他后台任务以及与UI交互上,还是需要用到AsyncTask。但是你真的了解AsyncTask吗?AsyncTask的实现几经修改,因此在不同版本的Android系统上表现各异;我相信,任何一个用户量上千万的产品绝对不会在代码里面使用系统原生的AsynTask,因为它蛋疼的兼容性以及极高的崩溃率实在让人不敢恭维。转载 2017-06-05 00:24:27 · 333 阅读 · 0 评论 -
从Instant-Run出发,谈谈Android上的热修复
AndroidStudio从2.0开始,加入了一个功能叫做InstantRun,顾名思义,这个功能的作用就是让开发者能够立即运行自己的程序。具体点说,就是我们不用再像以前那样每次修改完代码都要重新构建整个app,而是可以直接点击运行,修改的代码就可以作用于我们的app。转载 2017-06-03 19:24:50 · 366 阅读 · 0 评论 -
Android DataBinding原理解析
一、简介首先声明,本文讲解的Android DataBinding原理,不涉及Android DataBinding的配置和使用,如果大家想了解Android DataBinding的使用教程,请去Google Android官网,里面有非常详细的讲解。另外,本文也不是为Android DataBinding歌功颂德的,如果对着对本文的一些总结有不同观点,请留言,希望和大家一起思考这项“新技术”。原创 2016-04-17 20:31:16 · 7082 阅读 · 2 评论 -
Android收拉可定制的格网控件——ExpandTagGridBar
简介最近写了一个有收拉条的格网控件,控件样式可定制,可以设置收拉参数,在这和大家分享,(源码地址)。Android格网控件实现方式有很多,可以通过RecycleView实现,本文通过TableRow实现;收拉操作通过设置格网控件的bottomMargin;为了用户体验,使用动画控制收缩过程……。原创 2016-03-27 15:16:18 · 485 阅读 · 0 评论 -
Android Apt实战
前言最近在做一个技术项目,解决的内容是:如何将模块动态注册到一个HashMap中。具体解释一下,项目的页面全部是模块化的,一个页面有若干个模块,这些模块分散在不同的业务库中,一个页面需要通过配置才能获取它自己的模块,配置文件(config)一般与Activity在一个库内。因为Activity所在库无法依赖所有的库,模块注册在config中,以key+class全路径形式存储,读取时通过反射获取模块原创 2017-07-16 23:22:38 · 909 阅读 · 0 评论