`
文章列表
        本文出自:http://developer.android.com/guide/components/loaders.html#summary                Loaders           Android 3.0引入了Loader用于异步加载数据,Loaders使得在Activity和Fragment里异步加载数据变得更加容易。Loader有如下一些特性:         1.they are available to every activity and fragment.//activity和fragment里都能使用         2. ...

Parcelable的使用

        Android里为了提高序列化效率,提高了一个类似于java原生的Serializable的序列化接口——Parcelable。          下面就来详细说说这个Parcelable接口:           1.为什么要进行序列化?            1)永久性的保存对象,将对象序列化到文件中;            2)通过序列化对象在网络中传递数据;            3)通过序列化在进程中传递数据;          2.Android中实现序列化的方法             Android中实现序列化有两个选择:一是实现Serial ...

Fibonacci数列实现

          我们知道Fibonacci的定义如下:                     结果为:fibonacci: 0 1 1 2 3 5 8 13 21 34 55 89 ....             而编程实现该数列有两种方式:一种是递归实现;一种是非递归实现。而这类问题典型的实现是递归实现。如下所示:            1.递归实现                2.非递归实现:           方式一: public static int fibona(int i) { int a = 0;//第i-2个数 int b = 1; ...
        单例模式是一种常见的设计模式,我们也知道单例模式有如下几种实现形式:               1.最简单的实现---饿汉式                      注:如上标红所示,写一个单例(不管什么形式),主要注意点如下几 ...
               Best Practices for Security & Privacy         本文讨论如何保证你的app的数据安全       Security Tips         如何执行各种任务,以及如何保证你的app的数据和用户的数据安全。              Security with HTTPS a ...
Best Practices for Background Jobs        本文这些课程将告诉你如何在后台运行任务以提高你的app的性能和最小化你的电池消耗。          Running in a Background Service  如何将任务提交给在后台运行的Service来处理来提供UI性能和app的响应 Creating a Background Service Sending Work Requests to the Background Service Reporting Work Status   Loading Data in the ...
        本文首先讲述如何给actionBar中的menuItem按钮添加旋转动画,然后引申出如何自定义MenuItem,即自定义MenuItem的布局。                 1.如何给MenuItem添加旋转动画(刷新动画)          在项目中,我们会遇到这样的情况:在Actionbar上放一个刷新按钮用来刷新页面内容,但是点击后并没有一个刷新的旋转动画,经常需要给刷新按钮添加旋转动画。那么如何添加该动画效果呢?        首先,是Menu的布局,都设置成以ActionBar的形式显示,如下:           res/menu/menu_per ...
                 Handler的官方解释如下:         A Handler allows you to send and process Message and Runnable objects associated with a thread's MessageQueue.Each Handler instance is associated with a single thread and that thread's message queue.         Handler会关 ...
       本课程教你如何产生一个在app和设备间共享数据的app。                   Sharing Simple Data         Sharing Files         Sharing Files with NFC                 Sharing Simple Data          Android应用最伟大之处之一就是不同应用间的通信和整合的能力。如果一个功能在其他的app里已经实现了,而这些功能并不是你的app的“主业”,为什么自己再重新实现这些功能呢?          本文讲述几种方式用来在不同的应用之间使用In ...
       一个Android应用一般都有若干个activities。每个activity展示一个用户界面,用于执行特定的用户任务(例如浏览地图或者拍照)。为了让用户从一个activity跳到另一个activity。你的app必须使用一个 Intent定义你的app想要做某事的“意图”。当你通过调用如 startActivity()这样的方法传递一个Intent给系统时,系统使用Intent标识和开启合适的应用组件。使用intent甚至可以让你启动其他的app里的activity。         为了启动特定的组件(例如一个特定的Activity实例)intent可以是显示的,也可以是 ...
        绝大多数的Android App都需要保存数据,即使仅仅在onPause()方法里保存app状态信息以免user进度信息被丢失。大多数非著名的app也可能要保存用户设置信息。一些应用需要在文件和数据库保存大量的信息。本文将向你讲述A ...
        为了在Android上产生动态和多面板的用户界面,你需要将UI组件和activity行为封装成模块,你能将这些模块添加进或者移除你的Activity。你能产生这些模块用Fragment类。它的行为一定程度上像内嵌的activity,能定义它自己的 ...
          作为一个用户,在你的app里不同的页面和前后台切换时,你的app里的Activity实例在它的生命周期的不同状态间切换。例如,当你的activity第一次启动时,它处于系统前台,接受用户焦点。在这处理之间,Android系统调用一系列Activity上生命周期方法,在这些方法里,你可以设置用户界面和初始化其他的组件。如果用户执行一个开启另一个Activity或者切换到其他app的操作,这是当当前activity切换到后台时(activity对用户不再可见,但是实例和它的状态仍然是原封不动的),系统调用另外的一系列的生命周期方法。        在生命周期回调方法里,你能 ...
        全世界Android设备有许多种形状和尺寸。正因为android设备类型众多,你的应用能有机会拥有巨大量的用户。你的app要在android平台上尽可能的成功,你需要适配各种设备。你应该考虑的一些主要的方面有:不同的语言、屏幕尺寸和不同的android的平台。       本课教你如何使用基本的平台特性(指选择合适的资源)和其他的特性使你的应用在各种android设备上能兼容,并提供和优化用户体验。并且只需要一个应用包(APK)           Lessons:         支持不同的语言:                通过可选的字符串资源以支持多语言 ...
                Getting_Started----Adding the Action Bar           Action Bar 是在你的app的activity里最重要的的设计元素之一。提供了用户界面特性,主要功能包括:             * 提供一个专用空间来标识应用商标和用户位置             * 为用户常用的操作和行为提供便捷访问点(如搜索)             * 支持导航和视图切换(使用tab或者下拉列表)         如图:              你也应该看:         Action Bar   ...
Global site tag (gtag.js) - Google Analytics