- 博客(8)
- 收藏
- 关注
原创 View入门
View概述 对于一个view,他应该有两个位置:一个是显示位置(即我们人眼看到的位置),一个是点击位置(即接收用户点击事件的位置)。 在初始化完成后,两个位置是重合的,因此“所见即所点”。但,当调用了scrollTo(),scrollBy()或者tweens动画后,所见已经不和所点重合:所见位置发现变化,但所点还在原地。这也是属性动画和tweens动画的区
2016-04-27 17:02:39 1908
原创 RecyclerView及与其相关的类
ItemDecoration 允许对RecyclerView添加特殊的图案或者使item发生偏移。有以下三个方法: onDraw():为RecyclerView添加一些额外的修饰,该方法会在item绘制之前进行调用。也就是说它绘制的内容可能会被item给覆盖住——如果绘制在item的空格处就不会被挡住。 onDrawOver():基本上
2016-04-22 18:09:20 9074
原创 DecorView
基础 对于应用来说,Activity仅仅是一个载体,它本身并不负责任何界面的绘制,只是允许在其上创建界面,并提供一些API用于响应用户的操作,同时维护应用程序的生命周期等。所有的绘制都是交由Activity内部的Window(只有一个实现对象PhoneWindow)对象来实现的,而PhoneWindow内部在添加View之前,会首先创建一个DecorView,后继所有的View都
2016-04-22 14:13:18 1178
原创 Messenger
基础 Messenger的底层使用的是AIDL技术,因此,它的大部分操作都与AIDL相同。只不过在使用AIDL时,我们需要自己写AIDL文件,然后由开发工具根据AIDL文件生成相应的代码(这些代码就是使用Binder进行跨进程通信的代码)。 而在使用Messenger时,系统已经写好了AIDL文件,并也生成了相应的代码。Messenger有两个构造方法,如下:
2016-04-17 22:52:13 841
原创 AIDL
基础 为服务端定义的与客户端进行通信的接口,客户端按照服务端定义的AIDL接口文档进行传参数,即可获取服务端操作后的返回结果,从而实现客户端与服务端通信的功能。 服务端:定义AIDL文档的一方;客户端:调用AIDL文档的一方,请求的一方。步骤服务端 1,新建aidl文件夹,它与java目录同级(可直接右键->NEW->FOLDER->A
2016-04-16 16:55:20 1829
原创 多进程
基础 在默认的情况下,一个应用的所有组件都运行在同一个进程中的。android中使用多进程的方式有两种:第一种,在jni中开启另一个进程。 第二种,四大组件均支持 android:process 属性,此属性可以指定该组件应在哪个进程运行。如果没有为某个组件指定process属性,那么它将运行在默认的进程中,进程名为包名。可以在清单文件中设置此属性,使每个组件均
2016-04-14 14:10:30 375
原创 6.0权限认证
基础 系统将权限公为两种:normal与dangerous。只有在dangerous时才会需要用户在运行时确认权限。 如果系统版本低于5.1或者targetSdkVersion低于23,则权限与原来相同:都是在安装的时候需要用户允许,如果用户不允许就无法进行安装。 如果系统版本是6.0及以上,并且targetSdkVersion是23及以上,在
2016-04-12 23:29:36 676
原创 Activity入门(一)
生命周期 onCreate():activity进行创建,在该方法中应调用setContentView(),findViewById()以及获取要展示的数据的方法(如调用managerQuery()去查询数据库中将要展示的数据)。 在该方法中可直接调用finish(),此时activity会立即执行onDestory(),中间的生命周期将不会被执行到。
2016-04-05 20:42:44 2513
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人