- 博客(7)
- 收藏
- 关注
原创 android自定义span
在这再次说明一下replacementSpan.size(), replacementSpan.draw()方法里面的参数的意义。public abstract int getSize(@NonNull Paint paint, CharSequence text, @IntRange(from = 0) int start, @IntRange(from = 0) int end, @Nu...
2019-03-13 18:36:13
553
原创 源码角度分析Android的事件输入系统(input system)及ANR原理分析
此篇我们从android5.0(lolipop)源码角度分析Android的事件输入系统(input system):先引用一张图来说明下,Android输入系统的整个流程:1、Linux内核,接受输入设备的中断,并将原始事件的数据写入到设备节点中。2、设备节点,作为内核与IMS的桥梁,它将原始事件的数据暴露给用户
2018-01-26 16:05:50
952
原创 SwipeRefreshLayout与webview冲突解决方案
当SwipeRefreshLayout包裹了一个自定义控件的时候,下拉会先走刷新,如自定义webview,官方推荐重写SwipeRefreshLayout的canChildScrollUp方法,以下是实例:swipeRefreshLayout.setmCanChildScrollUpCallback(MyActivity.this);@Overridepublic boole
2017-07-28 10:13:47
749
转载 android GUI为何不设计成多线程模式
在我们这批新人转正评审的时候,我师父问了我的小伙伴一个问题:为什么一些更新界面的方法只能在主线程中调用?师父没有问我这个问题,让知其然但不知其所以然的我有种侥幸逃过一难的心情。我想如果回答那是因为Android GUI库是单线程消息机制的,更新界面的操作必须放到主线程中执行,那师父可能继续问为什么Android GUI要设计成单线程的,我就不知道了。为什么它非得设计为单线程的?多线程不
2015-01-27 02:23:49
649
原创 配置注解驱动的 Spring MVC
如前所述,DispatcherServlet 需要咨询一个或多个处理器映射来明确地将请求分发给哪个控制器。spring自带了多个处理器映射实现供我们选择:BeanNameUrlHandlerMappingControllerBeanNameHandlerMappingControllerClassNameHandlerMappingDefaultAnnotationHandle
2013-12-08 23:04:59
1999
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人