- 博客(25)
- 资源 (23)
- 收藏
- 关注
原创 Android面试题集锦(四)
2016.7.30更新............................................................................(66):怎样将一个Activity设置成窗体样式? 通过在Manifest文件中的标签下设置androif:theme = "@android:style/Theme.Dialog"设置Activi
2016-07-30 22:45:58 1677
原创 java面试题集锦(二)
2016.7.24更新............................................................................(12):
2016-07-26 22:51:15 1872
原创 Android面试题集锦(三)
2016.7.26更新...........................................................................(56):ListView异步加载图片出现乱序的原因 ListView在借助RecycleBin机制的帮助下,实现了一个生产者消费者的模式,不管有多少条数据需要显示,ListView中的子View其实来来回
2016-07-26 22:49:28 1993
原创 补充面试题(一)
2016.7.25更新...........................................................................(1):Cookie和Session的区别 (1):Cookie存放在客户端,Session存放在服务端; (2):因为Cookie存在客户端,因为造成了他不安全的特性,很容易通过分析存放
2016-07-26 10:22:09 1817 2
原创 android-----我眼中的Volley
这几天,为了面试,计划把自己看过的一些开源框架知识以一种非代码的形式描述一下,以便适合和面试官聊,这篇要聊的是Volley框架,如果你没看过Volley源码的话,建议你先去看看相关文章再来阅读本文; Volley框架是用于网络请求的,他适用于频繁的小数据网络请求,对于post大文件的情况,他显得有点无能为力了; Volley中存在三种队列,缓存队列,网络请求队列
2016-07-25 11:48:42 1408
原创 android-----我眼中的Binder
Binder作为进程间通信方式(IPC)的一种,算Android中比较难理解的部分了,今天计划以自己所认识的framework层的Binder原理来做个总结,好了,我们开始吧! 对于Android中利用Binder通信来说,我们首先肯定需要获得Binder对象了,但是系统服务和我们自定义服务Binder对象的获取方式是不一样的,原因就在于系统服务是在系统启动的时候被注册到Serv
2016-07-23 18:12:18 2339 1
原创 Android面试题集锦(二)
2016.7.22更新...........................................................................(33):Activity间通过Intent传递数据大小有没有限制? 有的,大小为40k;(34):Android中可以从主界面点击图标进入程序,也可以从一个程序中跳转过去,两者有何区别呢?
2016-07-22 12:15:26 1720
原创 Android面试题集锦(一)
(1):事件分发机制概述 首先应该搞清楚两个问题:事件分发机制分发的是什么?怎么进行分发? 分发的是MotionEvent事件了,也就是当我们的MotionEvent事件生成之后,事件是怎么传递到某一个View控件上面并且得到处理的过程; android事件产生后的传递过程是从Activity--->Window--->View的,即隧
2016-07-20 19:22:51 7050
原创 java面试题集锦(一)
(1):equals和==的区别 equals是用于比较两个实例所指向的内存空间里面的值是否相等; ==用于两个实例是否指向同一内存空间;(2):String与StringBuffer、StringBuffer和StringBuilder的区别 String与StringBuffer的区别通俗的讲就是常量和变量的区别,String
2016-07-19 22:55:58 4236 1
原创 java-----hashCode和equals的区别
首先来说说两者的区别,接着给出得出这些区别的原因,最后从HashMap和HashSet实现的角度谈谈这两个集合类对hashCode和equals的使用,其实说白了,个人认为这两个区别也只是在HashMap和HashSet中体现的比较明显点; 两者的关系: (1):两个对象如果equals,那么他们的hashCode也相等 (2):两个对象如果h
2016-07-18 21:54:12 2218
原创 android-----关于通过AIDL注册监听之后无法解除监听的探索
我们在平常使用AIDL时可能会有这样的场景,客户端并不想一直查看服务端有没有有关我的消息,而是想让服务端在有消息的时候能够通知我,随后客户端再去服务端拿消息,这样相对来说比较节省资源,通常我们可以利用观察者模式将客户端注册到服务端,接着有消息的时候服务端相应的通知各个客户端就可以了,这种方式在客户端和服务端处于同一进程的时候使用是没有问题的,因为同一进程内部是可以直接传递对象的,并不会出现注册绑定
2016-07-17 13:41:27 4986 1
原创 android-----IPC进程间通信之Messenger
Messenger是android为我们提供的可以在不同进程间传递Message的信使,他是对AIDL的封装,为此,我总结了他的几个特点: (1):哪里需要回送消息就需要在哪里创建一个Handler,因为使用Messenger实际处理消息的是Handler; (2):Messenger一次只能处理一个请求,因此不需要我们考虑线程同步的问题,原因很简单,因为服务端
2016-07-15 12:02:57 1235
原创 android-----IntentService源码分析
上一篇我们介绍了HandlerThread的用法,这一篇将从源码的角度来学习下IntentService的用法,其实IntentService是对HandlerThread的一种封装,又由于他本身是Service,所以很自然他也有Service的一些特点,比如他可以在后台使用,并且优先级较高,不容易被杀死,下面我们看看IntentService的源码; 首先查看他的类结构pu
2016-07-13 23:11:21 1227
原创 android-----HandlerThread的使用
最近在看Handler消息机制,不出意外的把HandlerThread怎么使用给忘记了,原因自然就是不懂原理了,网上资料太泛了,感觉有挺多错误的,还是决定自己整理一下了; 下面是我使用HandlerThread的一个小Demo:public class HandlerThreadActivity extends Activity{ @Override protected
2016-07-13 21:00:20 1262
原创 java-----容器类总结之ArrayList与LinkedList的区别
我们都知道java中关于List的实现有两种方式:ArrayList与LinkedList,那么今天我们来看看两者在使用过程中的一些注意事项; 首先来看看两者的类结构图:
2016-07-11 11:27:04 6658
原创 java-----ArrayList的fail-fast机制学习
java中经常会用到容器类,他们为我们实际的开发提供了很大的便捷,但是在使用的过程中经常会出现一些奇奇怪怪的异常,今天演示的就是使用ArrayList过程中出现的一个异常,就是我们经常会遇到的ConcurrentModificationException异常了,这个异常会在我们多线程并发修改ArrayList,并且至少有一个线程在迭代输出ArrayList里面的值的时候出现,下面我们再现一下出错场
2016-07-10 23:15:37 2123
原创 android-----IPC机制学习总结系列(一)
接下来开始了IPC机制的学习,自我感觉这是android中较难的一部分了,打算好好做个学习总结; 首先为什么会出现IPC机制,因为不同进程之间是不共享内存的,那么他们之间就不能通过直接为对象设置属性或者获取属性来共享对象了,所以也就出现了序列化与反序列化过程了,这也是学习IPC机制的基础,说白了IPC是为了进程间通信的,那么通信就意味着进程间会进行数据交互,也就是假如进程1想要使
2016-07-06 20:23:01 1195
原创 android-----View工作原理系列(三)
前面两篇博客我介绍了invalidate、postInvalidate、requestLayout的源码分析以及解释了从调用setContentView开始是怎么一步一步走到performTraversals来进行视图绘制的。这篇博客我将对performTraversals之后的measure、layout、draw三个过程通过伪代码的方式来个总结; 首先用一张图来直观的展示出V
2016-07-06 10:10:46 1277
原创 android-----View工作原理系列(二)
看过《Android开发艺术探索》View的绘制源码之后,里面在讲解绘制最开始执行的方法是ViewRootImpl里面的performTraversals,觉得有点费解,为什么直接就执行到这个方法呢?这中间一定也存在着执行到performTraversals的过程,本着想要了解清楚的想法,看了看源码,在此分享一下: 我们平常会在Activity的onCreate里面调用setCo
2016-07-05 18:37:52 2794
原创 android-----View工作原理系列(一)
这几天开始了View工作原理的学习,当然最初肯定是从View的绘制过程开始的,至于其中的源码分析网上挺多的,我只是会在随后的博客中做些总结,并不会从代码层面进行分析,这篇博客我们主要涉及的是invalidate以及与之有关的postInvalidate,他两个是用于视图重绘的,同样我也不会从代码层面进行分析,首先会通过实例来进行验证,之后把源码层面的执行过程通过总结的方式呈现出来;
2016-07-04 21:42:00 3586
原创 android-----在Activity启动时获得View宽高
我们都知道可以通过getMeasuredWidth、getMeasuredHeight以及getWidth、getHeight可以获得View的测量宽高以及最终宽高,但是两者必须是在onMeasure或者onLayout方法执行结束之后才能获取到值,否则获取到的只能是0,再加上View的measure过程和Activity的生命周期并不是同步的,并不能保证Activity在执行了onCreate、
2016-07-04 09:35:12 2907
原创 android-----滑动冲突解决案例
之前的几篇博客,我测试了View事件分发机制中的一些知识点,我们理解事件分发机制的目的就是为了能够更好了知道View中事件的传递过程进而能够对于滑动冲突有针对性的解决措施,今天我们通过一个翻页实例来学习下滑动处理的方式之一-----外部拦截法; 因为要用到翻页,那么不可避免的要用到Scroller类,其实拿scrollBy和scrollTo也能做到翻页的效果,但不足是两者都是在瞬
2016-07-03 14:35:17 5542
原创 android-----事件分发机制测试系列(五)
这篇是对事件分发机制的终极总结,包括前面测试中所用到的一些知识点,有什么不对的地方希望大家能够批评指正; 结论: (1):事件的传递方向是:Activity----->ViewGroup----->View,即隧道式分发; (2):ViewGroup的事件处理方法调用顺序是:dispatchTouchEvent----->onIntercept
2016-07-01 20:36:03 1542
原创 android-----事件分发机制测试系列(四)
上一篇,我们从源码的角度分析了View的事件分发过程,这篇我们从实例的角度来看看不同实例下具体的输出会是什么样子的呢?好的,我们开始吧! 同样我们的测试布局文件:<com.hzw.eventtest.MyRelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:too
2016-07-01 18:03:17 5224 1
原创 android-----事件分发机制测试系列(三)
上一篇我们主要主要是从ViewGroup的角度了解了下事件分发机制,但是没有涉足View的事件分发,也就是说我们没有为MyRelativeLayout、MyLinearLayout、以及MyButton设置Touch和Click监听事件,这一篇为了显示的打印信息比较简洁,我修改了布局文件,具体的布局文件代码如下:
2016-07-01 12:13:23 4118
winhex.exe
2017-09-20
DiskLruCache.java
2016-05-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人