原创内容,转载请注明出处
在下载SDK的时候,同时会下载Google Android的api demo,这些demo可以当作非常不错的学习案例,有些还可以直接应用到实际项目中。本次研究的Android demo是最新版本demo4.2.2。本次使用的开发工具是Java6+eclipse3.7.2+adt最新
1、ApiDemo工程导入
File——》New——》Project——》Android Sample Project,选择Android4.2.2——》Next——》ApiDemos——》Finish,完成项目的导入。
在导入项目中可能会出现好多错误,主要是因为R文件没有自动生成。找到报错的xml布局文件fragment_tabls_fragment.xml、progressbar_2.xml,错误提示是要求将@+android:id/替换为@+id/,按提示修改后,R文件自动生成,错误解除。
2、分析
在AndroidManifest.xml配置文件中查找应用程序启动的主Activity,该类是ApiDemos,它继承了ListActivity类。它没有对应的布局文件,而是使用ListActivity的默认布局,它主要的作用是自动生成为ListActivity的布局提供数据,其中数据包含Intent跳转信息。
它的关键代码是getData方法,该方法是获取并组装ListAdapter适配器数据。
1、首先在AndroidManifest.xml文件中,为所有的Activity配置种类Category属性,属性值为android.intent.category.SAMPLE_CODE。
2、构建主启动Intent实例,并为其赋值种类Category属性值,值为android.intent.category.SAMPLE_CODE。
3、首先获取PackageManager管理器实例,然后调用该实例的queryIntentActivities方法去查找种类Category为”android.intent.category.SAMPLE_CODE“的所有Activity信息,这些信息包装在一个List集合中,每个Activity信息都是一个ResolveInfo实例。
4、之后解析ResolveInfo实例集合,并将数据装入ListAdapter适配器(其中数据包括了Intent跳转实例),然后将适配器设入当前Activity。也就是说最后每个item项都有一个自己对应的Intent跳转实例。
5、重写onListItemClick方法,对每个item项的点击事件做相应处理(即调用对应Intent跳转实例,进行跳转)。
相关推荐
android ApiDemo android ApiDemo
android apidemo.apk
Google官方API(Android ApiDemo) 打包下载,初学者学习的捷径
android apidemo,android apidemo,android apidemo,android apidemo,
把Android Apidemo第一个例子抽出来,以后每学一节就加进Apidemo框架里,加深理解
android APIdemo 深入分析
谷歌官方Android ApiDemo,可直接导入Android Studio,全部配置好,导入即可跑通安装!
Android官方apidemo,android studio直接导入,运行安装即可
android中文apidemo详解事例,适合新手阅读快速上手。
android sdk中拿出来的 android api demo,sdk\samples\android-17,给需要的人
Android 5.0演示Demo,5.0效果必须在5.0手机上才能运行.在其他手机上有的不会出现.
学习android 的sample apidemo 以后要用到这些例子 方便自己方便别人
Android的Apidemo 的代码分析。非常好的资料,欢迎大家下载学习
#google官方ApiDemo——完善的Android学习资料基于Android系统原始码6.0的ApiDemos,使用Android Studio编译,compileSdkVersion 23,buildToolsVersion“ 23.0.3”,支持InstantRun ApiDemo非常全面的介绍了Android...
由于谷歌地图apiv2用的不是很习惯,改用了高德地图api,十分nice.用法与谷歌地图几乎相同。
ApiDemo Android简单的ApiDemo ·分析Android的Api,然后获得很多经验 ·注释代码 ·将自己的简单演示添加到项目中
关于android apidemos里面的例子 史上最全的anroid例子
android 示例源码 apidemo 内容很全的,直接导入即可使用学习