文章分类 -  Andorid

1
摘要:第3章 Hello,L10N(本地化)本章我们将创建一个Hello,L10N的应用程序,它会根据Android框架来选择性的载入一些资源。然后我们将一些资源添加到res/目录中,通过这样的方法来将我们的应用程序本地化。3.1 创建一个未本地化的应用程序在第一个Hello, L10N 的版本中我们仅适用默认的资源目录(res/drawable,res/layout, res/values)。 这些资源没有本地化-它们是我们经常使用的图形,布局,字符串等。当用户在默认的的语言环境中,将加载这些默认目录的资源。该应用程序包含一个简单的用户 界面,显示两个TextView对象和一个图像按钮。当点击按钮 阅读全文
posted @ 2013-03-21 13:08 Myna Wang 阅读(161) 评论(0) 推荐(0)
摘要:第1章 Hello,World作为一名开发者,我们学习一个平台的第一印象肯定都是写一个“Hello,World”。在Android上写一个“Hello,World”是很 简单的,由于我们使用Eclipise IDE,它提供了ADT这么强大的插件,这样创建和管理一个项目就更简单了,可以大大缩短我们的时间。在开始之前,你应该确认你已经安装了SDK和ADT 插件。本章会根据以下几个部分来讲述:1. 安装一个平台(系统版本)2. 创建一个Android虚拟机(AVD)3. 创建一个项目4. 构建一个用户界面5. 执行代码6. 升级界面为一个XML布局7. 调试你的项目1.1 安装一个平台(系统版本)为 阅读全文
posted @ 2013-03-21 13:07 Myna Wang 阅读(279) 评论(0) 推荐(0)
摘要:第2章 Hello,Views本章我们会选取几个类似“Hello World”的例子,并快速布局用来演示一些Views。本章需要有一定的知识积累,开始之前你应该完成“Hello World”并且知道如何创建运行一个工程,了解一个工程的基本结构。以下是一些内容的预览2.1布局Linear Layout(水平布局)Relative Layout(相对布局)Table Layout(表格布局)Grid View(网格View)Tab Layout(选项卡布局)List View(列表View)表格2-1 2.2 Widgets和其他ViewsDate Picker(日期选择器)Time Picker 阅读全文
posted @ 2013-03-21 13:06 Myna Wang 阅读(189) 评论(0) 推荐(0)
摘要:第4章 Activity的生命周期当我们在屏幕上发生一些事件,比如点击某个按钮用来切换Activity或来电情况等,都会触发Activity的生命周期事件,为什么我们要了解 Activity的生命周期呢?因为了解了它的生命周期我们才能根据不同的情况来处理我们的应用,让我们的应用程序更好用,更人性化。例如,如果你建立一 个流媒体视频播放器,当用户切换到另一个应用程序,你可能会暂停视频和终止网络连接。当用户返回时,你可以重新连接到网络,并允许用户恢复从同一地点的录 像。这些行为都可以直接在Activity的生命周期方法中处理它们。可能有的读者以前在网上看过关于生命周期的解释。这里我会透彻的,详细的 阅读全文
posted @ 2013-03-21 13:04 Myna Wang 阅读(151) 评论(0) 推荐(0)
摘要:第6章 使用Fragments构建动态UI为了在Android创建一个动态的多面的用户界面,你需要封装UI组件和activity的行为到一种可以相互交换的act的模块中。我们能使用 Fragment类创建这些模块,这行为有点像一个嵌套的act,它可以定义自己的布局和管理自己的生命周期。Fragment的好处已经越发明显,它是 Android3.0新增的API。当一个fragment指定它的布局,它能以不同的组合配置到act中,为不同的屏幕大小修改你的布局配置,一个小屏 幕可能只显示一个fragment,而在大屏幕中可能显示2个或2个以上的fragment。本章说明怎样使用fragment创建动 阅读全文
posted @ 2013-03-21 13:03 Myna Wang 阅读(156) 评论(0) 推荐(0)
摘要:第7章 与其他应用程序交互一个Android应用程序通常有几个activities。每个act显示一个用户接口允许用户执行一个指定的任务。用户从一个act到另一个 act,你的App必须使用一个Intent对象来定义你App想做些什么事。当你通过一个Intent调用startActivity()方法时,系统 会使用Intent来鉴定和启动合适的App组件。一个Intent可以明确的启动一个特定的组件(如一个特定的act实例)或隐式启动任何可以处理预定 动作的组件,本章我们将讲述怎么使用Intent来执行与其他Apps的一些交互,例如启动另一个App,从那个App接收结果。并使你的应用程序能够响 阅读全文
posted @ 2013-03-21 13:02 Myna Wang 阅读(127) 评论(0) 推荐(0)
摘要:第4章 Intents和Intent Filters一个Android应用程序的三个核心组件-activities,services,boradcast receivers都是通过调用intents消息来激活的。Intent消息传递是在最近运行的组件之间的一种设施,它能用于相同的或不同的应用程序 中。intent它本身是一个Intent对象,是一种把想要执行的操作抽象化的数据结构,或者使用广播描述发生或者宣布一些事情。传递每一种组件类型的 intent都有一个单独的机制:1. 一个Intent对象通过Context.startActivity()或者Activity.startActivity 阅读全文
posted @ 2013-03-21 13:02 Myna Wang 阅读(174) 评论(0) 推荐(0)
摘要:第5章 Android中的进程与线程 当一个应用程序开始运行它的第一个组件时,Android会为它启动一个Linux进程,并在其中执行一个单一的线程。默认情况下,应用程序所有的组件均 在这个进程的这个线程中运行(就是我们常说的android app主线程)。然而,你也可以安排组件在其他进程中运行,而且可以为任意进程创建额外的线程。本章主要介绍android app下的线程和进程是如何工作的5.1 进程默认情况下,同一应用程序的所有组件运行在同一进程中。不过,如果你需要控制某个组件属于哪个进程,也可以通过修改manifest文件来实现。 manifest文件中的所有组件节点 如<activ 阅读全文
posted @ 2013-03-21 13:01 Myna Wang 阅读(127) 评论(0) 推荐(0)
摘要:第6章 权限(Permissions)本文档介绍了应用程序开发人员如何使用由Android提供的安全功能。在Android 开放源代码项目AOSP(Android Open Source Project)中提供了更普通的Android安全性概述。Android是一种分权限的操作系统,在Android上运行的每个应用程序都具有各自独 立的系统标识(Linux用户ID和组ID)。系统各部分有不同并明显的标识。因此,Linux上运行的各个应用程序相互独立且与系统无关。Android的“permissions”机制通俗来说就是你程序就算实现了那个功能,如果没申请权限的话,那个功能一样运行部了。并且每个 阅读全文
posted @ 2013-03-21 13:00 Myna Wang 阅读(145) 评论(0) 推荐(0)
摘要:第7章 App WidgetsApp Widgets是一个应用程序的微型视图,可以嵌入到其他应用程序(如主屏幕)并且能够定期更新。你可以发布一个应用程序的App Widget,而这些视图称为窗口的用户界面。一个应用程序组件,可以支持其他应用程序的App Widgets称为App Widget的主机(host)。下面的截图是显示音乐的App Widget。该文档将介绍如何在应用程序里发布和使用App Widget。7.1 基础知识要创建一个App Widget,您需要了解以下几点:◆AppWidgetProviderInfo对象:描述了一个App Widget的元数据,如在AppWidget的布 阅读全文
posted @ 2013-03-21 12:59 Myna Wang 阅读(178) 评论(0) 推荐(0)
摘要:第2章 输入控件输入控件是应用程序中用户接口的一种交互式组件。Android提供了大量的可供人们在UI中使用的控件,比如按钮、文本区域、(带滑块的)进度条、复选框、缩放按钮以及切换按钮等等。在UI中增加输入控件就如同在XML布局中增加XNL元素一样简单。举例来说,下面为一个带有文本区域和按钮的布局。先看下图2-1的效果:图2-1 各种输入控件接下来然我们看下代码清单2-1是如何布局上面这些控件的:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android=" 阅读全文
posted @ 2013-03-21 12:58 Myna Wang 阅读(254) 评论(0) 推荐(0)
摘要:第8章 AndroidManifest.xml文件每个Android应用程序在根目录下必定有一个AndroidManifest.xml文件(文件名必须是这个)。这个manifest文件向 android系统列出了应用程序的必要信息,有了这些信息,系统才能运行应用程序(linux你懂的)。除此之外,manifest还有以下作用:◆列举了应用程序的java包。包名是识别应用程序的唯一标志。◆描述了应用程序的组件——Activity、Service、Broadcast receivers,Content providers。列举了实现每个组件的类,并给出可能的值(例如,类能处理的intent信息)。 阅读全文
posted @ 2013-03-21 12:58 Myna Wang 阅读(105) 评论(0) 推荐(0)
摘要:第3章 菜单在许多不同类型的应用中,菜单通常是一种用户界面组件。为了提供给用户提供熟悉且一致的体验,你需要使用菜单API来展示用户动作和你Activity中的其他选项。从安卓3.0系统(API level 11)开始,安卓设备已经不再需要提供专用的菜单按键。基于这种变化,安卓应用需要远离原来所依赖的传统6选项菜单盘,取而代之的是提供一个动作条来显示 普通用户的动作。虽然设计方案和用户使用菜单选项的方式已经改变,但是从语义上定义的一套动作和选项仍然是基于菜单API的。这份指导书将介绍在所有版本 的安卓系统中如何去创建三个基本类型的菜单和动作:1. 选项菜单和动作条选项菜单对于一个应用的菜单项来说 阅读全文
posted @ 2013-03-21 12:57 Myna Wang 阅读(201) 评论(0) 推荐(0)
摘要:第4章 Action BarAction Bar是一个能用于确定应用程序和用户的位置,并提供给用户操作和导航模式的窗口功能。如果需要显著地展示当前用户的操作或导航,应该使用Action Bar,因为Action Bar为用户提供了一个统一的跨应用程序和系统的接口,并且针对不同尺寸的屏幕优雅的处理了Action Bar的适配。你可以通过ActionBarAPI来控制它的行为和可视性,这些API添加于Android 3.0(API级别为11)。 Action Bar设计的目的是:◆提供一个专门的空间来确定应用程序的标识和用户的位置。这是在应用程序图标或者是左侧的logo以及Activity的标题帮 阅读全文
posted @ 2013-03-21 12:56 Myna Wang 阅读(185) 评论(0) 推荐(0)
摘要:第5章 设置(Settings)本章不同于通常网络上经常使用的SharedPreference,而是从底层了解Preference。FAQ QQ群213821767应用程序通常包括允许用户修改应用程序的特性和行为的设置功能。例如,一些应用程序允许用户指定通知是否启用或指定多久使用云同步数据。如果你想要 为你的应用程序提供设置,你应该使用Android的Preference APIs来构建统一的接口。本章的主角就是Preference,下面先让我们看一下图5-1::图5-1 这是android短信息应用程序的设置界面截图。它使用就是就是Preference5.1 概述相比使用View对象来构建用 阅读全文
posted @ 2013-03-21 12:55 Myna Wang 阅读(421) 评论(2) 推荐(0)
摘要:第6章 对话框一个对话框是一个小窗口,提示用户做出决定或输入额外的信息,一个对话框不填充屏幕并且通常用于在程序运行时中断,然后弹出通知提示用户,从而直接影响到正在运行的程序。图6-1就是对话框的外观。图6-1Dialog类是所有具体对话框的基类,但你应该避免直接实例化Dialog。因为可能有些现成的已经给你提供好了,比如以下几种:◆AlertDialog一个对话框,可以显示一个标题(可选),三个按钮(可选),内容的列表(可选),或一个自定义布局。◆DatePickerDialog或TimePickerDialog一个对话框,其中有一个预定义的用户界面,允许用户选择一个日期或时间。◆Progre 阅读全文
posted @ 2013-03-21 12:54 Myna Wang 阅读(169) 评论(0) 推荐(0)
摘要:第7章 通知一个通知是一条消息他是显示于你应用程序之外的一个界面中。当你告诉系统要发布一个通知时,它首先作为一个icon出现在通知区域。为了看见通知的细节,用户可以点击通知区域展开一个新的界面。下面让我们来看一下图7-1和图7-2:图7-1 通知出现在通知区域图7-2 通知展开后的效果(drawer)注意:除非特别注明外,本章指的都是NotificationCompat.Builder,它在v4 Support Library中有,正式添加于API Level 15。但有了v4 Support Library低版本系统也能用。另外Notification.Builder添加于android3. 阅读全文
posted @ 2013-03-21 12:53 Myna Wang 阅读(136) 评论(0) 推荐(0)
摘要:第1章 ActivityActivity是一个应用程序组件,它提供了一个屏幕,用户可以与它进行交互来做一些事情,比如拨打电话,拍照,发邮件,或查看地图。每个 Activity都被给予了一个窗口,可在其中绘制它的用户界面。窗口通常会占据整个屏幕,但可能比屏幕和浮在上方的其他窗口都要小。一个应用程序通常由多个互相松散绑定的activity组成。当首次启动应用时,应用程序中会有一个activity被指定为 “main”activity呈现给用户。这样每个activity就可以启动另一个activity来执行不同的操作。每次启动一个新的 activity,先前的activity就会停止,但系统会保留堆 阅读全文
posted @ 2013-03-21 12:51 Myna Wang 阅读(136) 评论(0) 推荐(0)
摘要:第2章 ServicesService是一个长期运行在后台,并不提供用户界面的应用程序组件。其他应用程序的组件可以启动一个service,并且即使用户切换到另一个 应用程序,service也可以在后台继续运行。此外,一个组件可以绑定到service与它进行交互,甚至执行进程间通信(IPC)。例如,一个 service可能会处理来自后台的所有事情,包括网络事务、播放音乐、执行文件I/O或者与content provider交互。一个service基本上有两种形态:1. 启动态(Started):当应用程序组件调用 startService()方法来启动一个service时,service就处于“ 阅读全文
posted @ 2013-03-21 12:50 Myna Wang 阅读(188) 评论(0) 推荐(0)
摘要:第1章 用户界面和布局应用程序的用户界面就是用户能看到并可以与它交互的任何东西。Android提供多种预置的UI组件,如结构化布局对象和允许你为应用程序创建图形 用户界面的UI控件。Android也会为特殊的接口提供其他UI模块,如对话框,通知和菜单。在一个Android应用中,所有用户界面元素都是由 View和ViewGroup对象创建的。View 是一种可以在屏幕上绘制某种画面并且可以与用户互动的对象。ViewGroup对象则是为了定义布局的接口而保存其他View(和ViewGroup)对 象。Android提供一个View和ViewGroup子类的集合,这个集合能为你提供相同的输入控制( 阅读全文
posted @ 2013-03-21 12:48 Myna Wang 阅读(275) 评论(0) 推荐(0)

1
免费流量统计