![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android文档翻译
ai逍遥
这个作者很懒,什么都没留下…
展开
-
Android用户界面---对话框(dialogs)
对话框通常是一个显示在当前Activity之前的小窗口。它下面的Activity会失去焦点,并且对话框会接受所有的用户交互。对话框通常用于通知用户中断操作的,并且要执行与应用程序内进度直接相关的短期任务(如进度条或登录提示)。Dialog类是创建对话框的基类。但你通常不应该直接实例化Dialog类,而应该使用以下之类。AlertDialog一个能够有一个、两个、三个或没有按翻译 2012-06-04 20:06:03 · 702 阅读 · 0 评论 -
Android 用户界面---操作栏(Action Bar 三)
添加操作视窗操作视窗是作为操作项目按钮的替代品显示在操作栏中的一个可视构件。例如,如果你有一个用于搜索的可选菜单项,你可以用SearchView类来替代操作栏上的搜索按钮,如图7所示:图7. 折叠(上)和展开(下)的搜索视窗的操作栏要个菜单资源中的一个项目声明一个操作视窗,你既可以使用android:actionLayout属性也android:actionView翻译 2012-06-04 20:01:35 · 618 阅读 · 0 评论 -
Android 用户界面---菜单(Menus 二)
创建上下文菜单上下文菜单提供了影响指定项目或UI中内容结构的动作。你能够给任何View对象提供一个内容菜单,但是它们最常用于ListView、GridView或集合类型的View对象的项目中,用户能够执行每个项目上的动作。有两个方法来提供上下文动作:1. 在一个浮动的内容菜单中提供上下文动作。当用户在一个声明支持上下文菜单的View对象上长按(long-click)时,会翻译 2012-06-04 19:55:09 · 801 阅读 · 0 评论 -
Android 用户界面---输入事件(Input Events)
在Android系统上,有多种方法截取用户跟应用程序交互的事件。当考虑用户界面的事件时,方法是要截获来自跟用户交互的那个特定的View对象的事件。View类提供这种能力。在用于组成布局的的各种View类中,你可以注意到几个公共的用于UI事件的回调方法。在各自对象上的动作发生时,Android框架来调用这些方法。例如,当触摸一个View对象(如一个按钮)时,该对象的onTouchEvent(翻译 2012-06-04 19:52:49 · 696 阅读 · 0 评论 -
Android Intents和Intent过滤器(一)
Android应用程序有三个核心组件---Activity、Service、Broadcast Receiver,Broadcast receiver是通过叫做Intent的消息来激活的。Intent消息是同一个应用程序或不同应用程序运行后,组件间进行绑定的一种能力。Intent对象本身是一个持有要执行操作的抽象描述的无源数据结构,或者在广播的情况下,经常用它来描述一些已经发生或正在发生的事情。给翻译 2012-06-04 19:35:23 · 594 阅读 · 0 评论 -
Android 内容提供器---创建内容提供器(设计内容资源标识(URI))
内容资源标识是标识提供器内数据的统一标识。内容资源标识包括完整的提供器的符合名(它的权限)和指向表或文件的名字(一个路径)。可选的ID部分指向一个表中独立的行。ContentProvider类的每个数据访问方法都要有一个内容资源标识做为参数,这样就允许你来决定要访问的表、行或文件。设计权限通常,提供器会有一个单一的权限作为它在Android内部的名字。要避免跟其他提供器的冲突,你应翻译 2012-06-01 11:57:29 · 594 阅读 · 0 评论 -
Android运行时
Android核心库包含了Java编程语言核心库所提供的大部分功能。每个Android应用程序都运行在它自己的进程中,每个进程都拥有自己的Dalvik虚拟机实例。Dalvik被设计成在一个设备上能有效运行多个虚拟机实例的Java虚拟机。在Dalvik可执行(.dex)格式中Dalvik虚拟机可执行文件对内存的需求被优化到最小。这个虚拟机是基于寄存器的,并且运行被Java语言编译器编译的类,翻译 2012-04-18 12:38:39 · 319 阅读 · 0 评论 -
Android 应用程序基础
Android应用程序是用Java编程语言编写的。Android SDK工具把应用程序的代码、数据和资源文件一起编译到一个Android程序包中(这个程序包是以.apk为后缀的归档文件),一个Android应用程序就是一个单独.apk文件中的所有内容,并且Android设备使用这个文件来安装应用程序。 安装在设备上的每个Android应用程序都生活在它们自己的安全沙箱中:1翻译 2012-04-18 12:40:19 · 435 阅读 · 0 评论 -
Android 创建Activity
要创建一个Activity,你必须创建一个Activity的子类(或者是现存的Activity子类)。在这个子类中,需要实现系统调用的回调方法,以便Activity在生存周期的各种状态间转换。如Activity正在被创建、被终止、被恢复、或被销毁等状态,其中两个最重要的回调方法是:onCreate()你必须在Activity子类中实现这个方法。在Activity创建时,系统会调用这翻译 2012-04-18 13:53:19 · 324 阅读 · 0 评论 -
Android Activity---使用Intent过滤器
元素中也能使用元素来指定各种Intent过滤器,以便声明其他应用程序组件可以怎样激活它。 当你使用AndroidSDK工具创建一个新的应用程序是,自动创建的那个Activity包含了一个声明Activity响应“Main”动作的Intent过滤器,并且这个过滤器被放在“Launcher”分类中。过滤器声明如下:翻译 2012-04-18 13:58:39 · 453 阅读 · 0 评论 -
Android Activity---启动Activity
你能够通过调用startActivity()方法来启动另外一个Activity,在调用这个方法时要给它传递一个你想要启动的描述Activity的Intent作为参数。这个Intent既可以确切的指定你想要启动的Activity,也可以是你想要执行的动作的类型的描述(系统会给你选择相应的Activity,甚至可以从不同的应用程序中选择)。Intent也能够携带少量的用于启动Activity所需的数据翻译 2012-04-18 14:03:03 · 426 阅读 · 0 评论 -
Android Activity---管理Activity的生命周期
通过实现回调方法来管理Activity的生命周期是开发强壮和灵活应用程序的关键。Activity的生命周期直接受到与之相关的Activity、任务和回退堆栈的影响。Activity存在基本的三种状态:恢复态(Resumed)、这种状态下,Activity在屏幕的前端,并有有用户焦点(这种状态有时也叫“运行态”) 暂停态(Paused)这种状态下的Ac翻译 2012-04-18 14:16:20 · 328 阅读 · 0 评论 -
Android Activity---处理配置的改变
某些设备配置能够在运行期间改变(如屏幕方向、键盘的可用性、语言等)。当这些改变发生时,Android会重建正在运行的Activity(系统调用onDestroy()方法后,立即调用onCreate()方法)。设计这个行为来帮助应用程序自动的适应新的配置,重新加载应用程序的替代资源(针对不同屏幕方向和尺寸的布局)。 如果正确的设计你的Activity使它能够处理屏幕方向改变期间重启和恢复以上翻译 2012-04-18 14:46:51 · 379 阅读 · 0 评论 -
Android Fragment---添加一个没有UI的Fragment
上面的例子显示了怎样把Fragment作为UI的一部分添加到Activity上,但是,你也能够使用Fragment只提供一个后台行为,而没有额外的UI展现。要添加一个没有UI的Fragment,需要在Activity中使用add(Fragment,String)(给Fragment提供一个唯一的字符串“tag”,而不是视图ID)方法来添加Fragment。但是,因为这样添加的Fragmen翻译 2012-04-24 23:21:22 · 2024 阅读 · 0 评论 -
Android Fragment---跟Activity通信
尽管Fragment是作为一个独立于Activity来实现的一个对象,并且能够在多个Activity内部使用,但是一个给定的Fragment实例直接被捆绑包含它的Activity中。特别是Fragment能够使用getActivity()方法访问Activity的实例,并且很容易执行如在Activity布局中查找视图的任务:View listView = getActivity翻译 2012-04-26 01:10:50 · 726 阅读 · 0 评论 -
Android 装载器---启动装载器
LoaderManager管理Activity或Fragment内部的一个或多个装载器实例,每个Activity或Fragment只有一个LoaderManager对象。通常在Activity的onCreate()方法或Fragment的onActivityCreated()内初始化一个装载器,如:// Prepare the loader. Either re-connec翻译 2012-04-28 13:04:43 · 509 阅读 · 0 评论 -
Android 任务和回退堆栈---启动任务
你能够通过用“android.intent.action.MAIN”和“android.intent.category.LAUNCHER”分别给Intent过滤器指定行为和类别,从而创建一个Activity作为一个任务的入口。例如: ...这种类型的Intent会让对应的Activity的图标和标签显示在应用翻译 2012-05-11 10:38:01 · 420 阅读 · 0 评论 -
Android 任务和回退堆栈---管理任务
Android通过把所有的已启动的Activity依次放到同一个后进先出的堆栈里来进行管理,对于大多数应用程序来说这种方法能够很好的工作,并且你不必担心Activity是如何跟任务关联的或者他们是如何存在回退堆栈中的。但是,你可能决定要打破这种通常的行为。或许你想要应用程序中的一个Activity在启动的时候开启一个新的任务(而不是放在当前的任务中);或者当你启动一个Activity时,你想使用之翻译 2012-05-08 17:55:22 · 394 阅读 · 0 评论 -
Android 任务和回退堆栈---保存Activity状态
在Activity被终止时保留Activity的状态是系统的默认行为。这样,当用户返回到之前的Activity时,用户界面会显示它们离开时的样子。但是在Activity被销毁和重建的场景中应该主动的使用回调方法保留Activity的状态。当系统终止一个Activity时(如一个新的Activity启动或这个任务被转移到后台),如果需要回收系统内存,那么系统可能完全的销毁这个Activity翻译 2012-05-08 17:53:39 · 369 阅读 · 0 评论 -
Android 内容提供器---创建内容提供器(设计数据存储)
内容提供器是用结构化的格式来保存数据的接口。在你创建接口之前,你必须决定如何保存数据,你能够使用你喜欢的任何格式存储数据,然后设计读写数据所必须的接口。以下是在Android平台中有效的数据存储技术:1. Android系统包括了一个Android自己的用于保存面向表数据的SQLite数据库API。SQLiteOpenHelper类帮助你创建数据库,SQLiteDatabase类翻译 2012-06-01 11:56:19 · 365 阅读 · 0 评论 -
Android Service---启动服务
你能够通过把一个Intent对象(指定要启动的服务)传递给StartService()方法,从一个Activity或其他的应用程序组件启动服务。Android系统调用服务的onStartCommand()方法,并且给它传递Intent对象(你不应该直接调用onStartCommand()方法)例如,一个Activity能够使用带有明确的Intent对象的startService()方法来启翻译 2012-05-11 10:42:25 · 361 阅读 · 0 评论 -
Android Service---终止服务
被启动类型的服务必须管理它自己的生命周期。也就是说除非系统要回收系统内存,否则系统不会终止或销毁这个服务,在onStartCommand()方法返回后,这个服务会继续运行。因此而这种类型的服务必须通过调用stopSelf()方法或另一个组件通过调用stopService()方法才能终止。一旦用stopSelf()方法或stopService()方法请求终止服务,那么系统一有可能就会销毁这个翻译 2012-05-11 10:42:52 · 918 阅读 · 0 评论 -
Android Service---管理服务的生命周期
服务的生命周期跟Activity的生命周期类似。但是生命周期甚至比你关注服务如何创建和销毁更重要,因为服务能够在用户不知情的情况下在后台运行。服务的生命周期---从创建到销毁---可以被分为以下两个路径:1. 启动类型的服务:一个组件调用startService()方法创建服务,然后服务无限期的运行,并且必须通过调用stopSelf()方法来终止自己。其他组件也能够通过调翻译 2012-05-11 10:50:14 · 332 阅读 · 0 评论 -
Android 绑定类型服务---简介
绑定类型的服务是在客户-服务接口中的服务端。绑定类型服务允许组件(如Activity)绑定服务、发送请求、接收响应、以及执行进程间通信(IPC)。一个典型的绑定类型的服务只跟它所服务的那个应用程序组件同时存在,并且不在后台无限期的运行。这份文档向你展示了如何创建绑定类型的服务,包括怎样跟其他应用程序组件绑定。但是,关于服务的基本信息你还是应该参照“Android Service”这份文档,翻译 2012-05-11 10:51:09 · 258 阅读 · 0 评论 -
Android 绑定类型服务---继承Binder类
如果你只在应用程序的局部使用服务,并且不需要跨进程工作,那么你能够实现自己的Binder类,用它直接给你的客户端提供访问服务中公共方法的能力。注意:通常,客户端和服务端只是在同一个应用和进程中工作,例如,对于一个要良好工作的播放音乐的应用程序,就需要把在后台工作的播放音乐的服务与应用自己的一个Activity绑定。以下是建立绑定类型服务的步骤:1. 在服务中,使用以下方法之翻译 2012-05-11 10:54:14 · 374 阅读 · 0 评论 -
Android 绑定类型服务---其他注意事项
以下是关于绑定的重要注意事项:1. 你应该始终捕获DeadObjectException异常,当连接被中断时这个异常被抛出。这是由远程方法抛出的唯一异常。2. 对象的引用计数是跨进程的。3. 通常绑定和解除绑定应该成对使用,而且要跟客户端的生命周期的启动和退出时刻匹配。例如:如果你只需要在Activity可见的时候跟服务交互,那么就应该在onStart()期间绑定在onStop()翻译 2012-05-17 12:11:36 · 706 阅读 · 0 评论 -
Android 内容提供器---内容提供器基础(概述) .
内容提供器管理着对数据的核心资源库的访问。并且提供器是Android应用程序的一部分,它经常为了跟数据协同工作而提供自己的UI。但是内容提供器的主要目的是提供其他应用程序使用,它们使用提供器的客户端对象访问提供器。提供器和提供器客户端一起给处理进程间通信的数据和安全数据访问提供了一个一致的、标准的接口。这个主题主要介绍以下基础内容:1. 内容提供器是如何工作的;2. 使用API从内容提翻译 2012-05-17 12:15:26 · 304 阅读 · 0 评论 -
Android 用户界面---操作栏(Action Bar 二)
选择操作项通过评估一些关键的特性,你应该仔细的选择选项菜单中的那些菜单项应该作为操作项来显示,通常,每个操作项应该至少满足下列特性之一:1. 经常使用:用户百分之七十以上的访问都需要使用的操作,或者是要连续的多次使用的操作。2. 重要:它是一个用户能够很容易找到的操作,即使它不是经常性的操作,也需要用户在需要的时候能够轻易的找到它,并执行。如,Wi-Fi设置中的翻译 2012-06-04 20:00:15 · 833 阅读 · 0 评论 -
Android 用户界面---操作栏(Action Bar 一)
操作栏是一个标识应用程序和用户位置的窗口功能,并且给用户提供操作和导航模式。在大多数的需要突出展现用户操作或全局导航的Activity中,你应该使用操作栏,因为操作栏能够跨应用程序给用户提供一致的界面,并且系统能够很好根据不同的屏幕配置来适应操作栏的外观。你能够用ActionBar的对象的API来控制操作栏的行为和可见性,这些API被添加在Android3.0(API 级别 11)中。翻译 2012-06-04 19:59:15 · 898 阅读 · 0 评论 -
Android 用户界面---菜单(Menus 三)
弹出菜单是停靠在一个View上的一个模式菜单。如果View对象下方有空间,那么弹出菜单将显示在停靠对象的下方,否则会显示在上方。这是非常有用的:1. 给指定内容的操作提供一个溢出式菜单(如图4所示的Gmail的邮件头)。图4. Gmail应用中的一个弹出菜单,停靠于右上角的溢出按钮。注意:这是跟上下文菜单不一样,上下文菜单是对选择内容有影响的操作。针对应用选择内容翻译 2012-06-04 19:56:55 · 682 阅读 · 0 评论 -
Android 用户界面---菜单(Menus 一)
在很多类型的应用程序中,菜单是一个常用的用户界面组件。要提供友好的和前后一致的用户体验,就应该使用Menu APIs把Activity的动作和其他选项展现给用户。从Android3.0(API 级别 11)开始,Android设备不再需要提供一个专用的Menu按钮,随着这种改变,Android应用程序将会从对传统的6项菜单面板的依赖中解脱出来,取而代之的是提供了一个用户展现常用用户动作的操翻译 2012-06-04 19:53:53 · 531 阅读 · 0 评论 -
Android 进程和线程(二)
线程应用程序启动时,Android系统会给应用程序创建一个叫做“main”的执行线程。这个线程很重要,因为它负责给适当的用户界面窗口调度事件,包括描画事件。它也是你的应用程序与Android UI工具中的组件交互的线程(这些组件来自android.widget和android.view包)。如,“main”线程有时也叫UI线程。系统不会给每个组件的实例创建一个单独的线程。运行在同一翻译 2012-06-04 19:49:46 · 499 阅读 · 0 评论 -
Android 进程和线程(一)
当一个应用程序组件启动并且应用还没有运行任何其他组件时,Android系统会给应用程序启动一个新的带有单一执行线程的Linux进程。默认情况下,同一应用程序的所有组件都运行在相同的进程和线程(被叫做“主”线程)中。如果应用程序组件启动,并且针对这个应用的进程已经存在(因为应用程序中的其他组件的存在),那么这个组件就会在应用对应的进程中被启动,并且使用相同的执行线程。但是你能够安排应用程序中不同的组翻译 2012-06-04 19:48:56 · 632 阅读 · 0 评论 -
Android 日历提供器(三)
日历的Intent对象你应用程序不需要读写日历数据的权限,它可以使用Android的Calendar应用程序支持的Intent对象来替代你的应用程序的读写权限。下表列出了Calendar提供器支持的Intent对象:动作资源标识(URI)描述附加功能VIEWcontent://com.android.c翻译 2012-06-04 19:34:43 · 3635 阅读 · 0 评论 -
Android 日历提供器(二)
Calendars表CalendarContract.Calendars表包含了单个日历的详细信息。下表中Calendars表列对应用程序和同步适配器都是可写的。对于这个表支持的完整的字段列表,请看“CalendarContract.Calendars参考”http://developer.android.com/reference/android/provider/Calenda翻译 2012-06-04 19:22:24 · 2777 阅读 · 0 评论 -
Android 内容提供器---创建内容提供器(Intent对象和数据访问)
应用程序能够使用Intent对象间接的访问一个内容提供器。应用程序不调用任何的ContentResolver或ContentProvicer方法,相反,它会给启动它的Activity发送一个Intent对象,这个Intent对象通常是提供自己应用程序的一部分。目标Activity负责获在它的UI中获取和显示数据。依赖Intent中的动作,目标Activity也可以提示用户来修改提供器的数据。Int翻译 2012-06-01 12:01:12 · 495 阅读 · 0 评论 -
Android 内容提供器---创建内容提供器(实现内容提供器权限)
在“安全和权限”的专题中全面详细的描述了有关Android系统的权限和访问。“数据存储”的专题也描述了安全和权限对各种存储类型的影响。因此以下简要介绍几个重点内容:1. 默认情况下,保存在设备内部存储器上的数据文件是你的应用程序和提供器私有的;2. 你创建的SQLiteDatabase数据库对你的应用程序和提供器是私有的;3. 默认情况下,保存在外部存储器中数据文件是翻译 2012-06-01 11:59:51 · 523 阅读 · 0 评论 -
Android 内容提供器---创建内容提供器(实现ContentProvider类)
ContentProvider对象实例通过处理来之其他应用程序的请求来管理对结构化数据集的访问。最终调用ContentResolver对象的所有的访问形式,都会对应ContentProvider类的具体方法。必要的方法抽象类ContentProvider定义了六个抽象方法,你必须在你自己具体的子类中来实现这些方法。这些方法中除了onCreate()以外,都用于视图访问你的内容提供的翻译 2012-06-01 11:58:29 · 1676 阅读 · 0 评论 -
Android是什么
Android是一个针对移动设备的软件包,包括操作系统、中间件和关键的应用程序。Android SDK提供了在Android平台上使用Java编程语言进行应用开发所必须的工具和APIs。 功能特点 1. Application Framework使组件能够重用和替换; 2. 针对移动设备而优化的Dalvik虚拟机; 3翻译 2012-04-18 12:28:44 · 557 阅读 · 0 评论 -
Android Activity---实现一个用户界面
一个Activity的用户界面是通过View树来提供的---这些View对象继承View类。每个View在Activity的窗口中都控制一个特定的的矩形区域,并且能够响应用户的操作。例如,一个按钮在用户点击它时,可以启动一个动作。Android提供了很多已经准备好的View,你能够使用这些View来设计和组织到你的布局中。“Widgets”是给屏幕提供的可见的并可交互的View元素。如按钮翻译 2012-04-18 13:55:32 · 473 阅读 · 0 评论