
Android开发艺术探索笔记
qy274770068
这个作者很懒,什么都没留下…
展开
-
一、Activity的生命周期
Activity生命周期1.onStart和onResume、onPause和onStop从描述上来看差不多,对我们来说有什么实质的不同呢?从实际的使用过程来说,onStart和onResume、onPause和onStop看起来的确差不多,这两个配对的回调分别代表不同的意义,onStart和onStop是从Activity是否可见这个角度来回调的, 而onResumeheonPause是从原创 2015-10-18 15:44:08 · 552 阅读 · 0 评论 -
十一、Android的线程和线程池
除了Thread本身以外,在Android中可以扮演线程的角色还有很多,比如AsyncTask和IntentService,同时HandlerThread也是一种特殊的线程。尽管AsyncTask,IntentService以及HandlerThread的表现形式都有别于传统的线程,但是它们的本质任然是传统的线程。原创 2016-03-19 17:13:21 · 553 阅读 · 0 评论 -
十、Android的消息机制
从开发的角度来说,Handler是Android消息机制的上层接口,这使得在开发过程中只需要和Handler交互即可。 Handler的使用过程很简单,通过它可以轻松地将一个任务切换到Handler所在的线程中去执行。 Android的消息机制主要指Handler的运行机制,Handler的运行需要底层的MessageQueue和Looper的支撑。MessageQueue的中文翻译是消息队列原创 2016-03-19 17:06:04 · 548 阅读 · 0 评论 -
九、四大组件的工作过程
四大组件的运行状态Android中的四大组件除了BroadcastReceiver之外,其他三大组件都必须在Manifest里面注册,对于BroadcastReceiver来说,它既可以在Manifest里面注册,也可以通过代码来注册。 在调用方式上面,Activity,Service,BroadcastReceiver需要借助Intent,而ContentProvider则无需借助Intent。原创 2016-03-19 16:59:53 · 885 阅读 · 0 评论 -
八、Window
Window表示一个窗口的概念,直接使用的机会不多,在某些特殊的时候,比如需要在桌面上显示一个类似悬浮窗的东西,那么这种效果就需要Window来实现。 Window是一个抽象类,在手机上面的具体的实现是PhoneWindow。创建一个Window是很简单的事,只需要通过WindowManager即可完成。原创 2016-03-19 16:53:58 · 468 阅读 · 0 评论 -
七、Android动画
Android的动画可以分为3种,View动画,帧动画和属性动画,其实帧动画也属于 View动画的一种,只不过它和平移,旋转等常见的View动画在表现形式上面略有 不同而已。 属性动画通过动态地改变对象的属性从而达到动画效果。原创 2016-03-19 16:44:51 · 488 阅读 · 0 评论 -
六、Drawable
掌握Drawable可以做出一些特殊的效果.Drawable的内部宽高通过getIntrinsicWidth和getIntrinsicHeight这两个方法可以获取到。并不是所有的Drawable都有内部宽高,比如一张图片所形成的的Drawable,它的内部宽高就是图片的宽高,但是一个颜色所形成的的Drawable,就没有内部宽高的概念。原创 2016-03-19 16:37:34 · 346 阅读 · 0 评论 -
五、View的工作原理
ViewRoot和DecorViewViewRoot对应于ViewRootImpl类,它是连接WindowManager和DecorView的纽带,View的三大流程均是通过ViewRoot来完成的。在ActivityThread中,当Activity对象被创建完毕后,会将DecorView添加到Window中,同时会创建ViewRootImpl对象原创 2016-03-19 16:22:33 · 514 阅读 · 0 评论 -
四、View的事件体系续
使用Scroller 这里的滑动是指view内容的滑动。 当我们构造一个Scroller对象,并调用它的startScroll方法的时候,Scroller内部其实什么也没有做,只是保存了我们传递的几个参数。原创 2015-10-31 18:19:44 · 602 阅读 · 0 评论 -
四、View的事件体系
View的位置由它的四个顶点来决定:top是左上角纵坐标,left是左上角横坐标,right是右下角横坐标,bottom是右下角纵坐标这些坐标都是相对View的父容器来说的,因此是相对坐标。在Android中,x轴和y轴的正方向分别为右和下。原创 2015-10-18 17:09:51 · 737 阅读 · 0 评论 -
三、RemoteViews
RemoteViewsRemoteViews在Android中的应用场景有两种:通知栏和桌面小部件。1.RemoteViews的应用RemoteViews在实际的开发过程中,主要用在通知栏和桌面小部件的开发中。 通知栏主要是通过NotificationManager的notify方法来实现的,它除了默认效果,还可以自定义布局。原创 2015-10-18 16:54:47 · 561 阅读 · 0 评论 -
二、IPC机制续(IPC方式)
IPC机制具体方式有很多,比如可以在Intent中附加Extra来传递信息,或者通过共享文件的方式来共享数据,还可以采用Binder方式来跨进程通信,另外,Content Provider天生就是支持跨进程访问的,因此,我们也可以使用它来进行IPC,另外通过网络通信也是可以实现数据传递的,所以Socket也可以实现IPC。1.使用Bundle由于Bundle实现了Parcelable接口,所以它可以原创 2015-10-18 16:30:42 · 723 阅读 · 0 评论 -
二、IPC机制(IPC介绍)
1.介绍IPC是Inter-Progress Communication的缩写,含义为进程间通信或者跨进程通信。是指两个进程之间进行数据交换的过程。Android里面最有特色的进程间的通信方式就是Binder,通过它可以轻松的实现进程间的通信,Android也支持Socket,通过Socket也可以实现任意两个终端之间的通信,当然一个设备上的两个进程通过Socket通信自然也是可以的。原创 2015-10-18 16:06:17 · 1090 阅读 · 0 评论 -
十二、Bitmap的加载和Cache
Bitmap的加载和Cache,目前比较常用的缓存策略是LruCach和DisLruCache,其中LruCache常被用作内存缓存,而DisLruCache常被用做存储缓存。 Lru是Least Recently Used即最近最少使用算法,这种算法的核心思想是,当缓存快满时,会淘汰近期最少使用的缓存目标。1.Bitmap的高效加载加载图片,BitmapFactory类提供了四类方法。原创 2016-03-19 17:17:38 · 691 阅读 · 0 评论