Android
文章平均质量分 63
Mr_Wrong1
这个作者很懒,什么都没留下…
展开
-
Android5.0 SharedElement的使用
概述SharedElement是什么,翻译是共享元素,但是光说也说不出个杰宝来,no picture say a jb,先看一下效果图,省好多话。 这个效果目前只支持API21以上,之前的可以使用一些兼容库,比如这个ActivityOptionsICS。废话少说,下面来介绍一下如何去使用和实现这个效果。简单原理俗话说眼见为实,这句话也不一定对,从上面的图可以看到,从activityA的一个图片原创 2015-11-05 22:47:32 · 3739 阅读 · 0 评论 -
React Native启动简易思维导图
在线浏览原创 2017-08-22 19:26:25 · 766 阅读 · 0 评论 -
Fragment启动生命周期
源码版本:26.0.0-beta1Fragment 的生命周期是依赖Activity的,假设在Activity的onCreate中有如下代码, SearchFragment searchFragment = new SearchFragment(); getSupportFragmentManager().beginTransaction() .rep原创 2017-08-04 16:11:38 · 326 阅读 · 0 评论 -
Retrofit源码浅析
更多博客 https://70kg.info 这篇主要会走读一下Retrofit的源码,解析一下里面遇到的一些设计模式,网络请求的过程等。开始从创建Retrofit开始,看一下常见的创建Retrofit的实例的方式 HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor(); interceptor.se原创 2017-08-03 22:42:03 · 282 阅读 · 0 评论 -
Instant-Run与Tinker中Application替换
更多博客 https://70kg.info为什么要替换application因为5.0以下开始只会去加载第一个dex,如果appliaction不在第一个dex,则无法启动。如果把自己的appliaction放在第一个dex中,而自己的application没有使用multidex,则只会去加载原始加载生成的dex,也是会报错。所以办法就是去代理掉原始的application,将app启动的原创 2017-08-03 22:39:35 · 498 阅读 · 0 评论 -
浅谈CoordinatorLayout
更多博客 https://70kg.info写在前面最近这一周空余的时间比较多,然后去重构了一个公司项目里的一个个人中心的页面,原来使用了ListView再加上addHead的方式,然后动态的去控制Head的高度去实现嵌套滑动的效果,因为我的模拟器没有跑起来,所以也没有去录下个GIF来,因为这篇主要说一下CoordinatorLayout的处理嵌套滑动的原理,没有效果图也影响不大。开始吧先写出来点原创 2017-08-03 22:36:59 · 309 阅读 · 0 评论 -
Router设计
更多博客 https://70kg.info 最近公司的项目要进行页面间跳转的重构,首先项目是单 Activity + 多 Fragment 的结构,因为是电商的项目,所以涉及到很多 H5 , Native 和 React Native 页面之间的交互与跳转,这篇不是介绍两者之间是如何进行通信的,而是当 H5 或者外部分享的链接打开后传递过来 Uri 要解析跳转到 Native 的页面的处理。当原创 2017-08-03 22:36:03 · 447 阅读 · 0 评论 -
从零撸一个Redux
更多博客 https://70kg.info扯一扯这段时间在看 Redux 的东西,稍微梳理一下整个框架的流程。其实整个 Redux 的代码很少,现在我也不能理解很多它的思想,反正先撸出个简单的 Redux 吧。目标是照着它的流程写一个最简单的,也要支持异步 Action。也算是个笔记性的东西。Action这里把 Action 放到了 Store 中,这样在 Component 中使用的时候只要原创 2017-08-03 22:34:44 · 404 阅读 · 0 评论 -
Handler sendMessage的message保存在哪?
更多博客 https://70kg.info保存在MessageQueue的Message mMessages成员变量中,通过message中的next维护一个单向链表。message本身一直在java层,和native的message没有直接操作关系。looper分发的消息都是通过messagequeue.mMessages间接获取的。当sendMessage时,进入messagequeue的原创 2017-08-03 22:32:59 · 808 阅读 · 0 评论 -
由View.post引发的问题
更多博客 70kg.info看到记一次错误的使用View.post(Runnable)这篇的时候,自己去实验了一下,当时是在 Activity 的 onDestory 中做的,以为到了 onDestory View 肯定是 Detach 的,结果并不是这样的。。后来发现在 API 24的时候,关于 View.Post 这部分的代码有重写,所有就捋了捋关于这部分的东西,简单记录一下。View Det原创 2017-08-03 22:31:00 · 1036 阅读 · 0 评论 -
Fragment Can not perform this action after onSaveInstanceState
更多博客 https://70kg.info最近遇到了这个异常,记录一下解决办法。首先看一下这个异常是从哪里抛出来的://FragmentManager public void enqueueAction(OpGenerator action, boolean allowStateLoss) { if (!allowStateLoss) { checkSta原创 2017-08-10 17:22:20 · 390 阅读 · 0 评论 -
Lifecycle Components 问答
为什么不直接使用ActivityLifecycleCallbacks而是使用一个non-UI fragment ReportFragment?因为在”创建”生命周期方法中(onCreate,onStart),ActivityLifecycleCallbacks中方法调用是在Activity的生命周期方法之前。在”销毁”生命周期方法中(onStop,onDestroy),ActivityLifecyc原创 2017-08-09 11:48:47 · 936 阅读 · 0 评论 -
RecycleView Adapter的封装
扯一扯现在越来越多的开始使用RecycleView去替代ListView,在使用ListView的时候数据和界面的绑定一般是去继承BaseAdapter,对于BaseAdapter的封装网上已经很多了,其实也不用去封装太多的东西,BaseAdapter的整体也比较见简单。但是当使用更为强大的RecycleView的时候,如果不去对它的adapter进行适当的封装,使用起来就显得繁琐的多了。现在来说一原创 2015-11-26 20:12:16 · 1041 阅读 · 0 评论 -
React Native是怎么在Android上跑起来的
(源码版本:0.34,新版本(0.48)基本流程是不变的,建议跟着源码看看,哪个版本的倒影响不大) 这篇简单刨析一下React Native是怎么在Android上跑起来的,会从下面几个方面说说。启动流程通信机制事件驱动 渲染原理 脚本执行 启动流程React Native在Android上启动是从ReactRootView.startReactApplication触发的,而Rea原创 2017-09-07 16:00:23 · 1967 阅读 · 0 评论