第1章 用户界面和布局 应用程序的用户界面就是用户能看到并可以与它交互的任何东西.Android提供多种预置的UI组件,如结构化布局对象和允许你为应用程序创建图形用户界面的UI控件.Android也会为特殊的接口提供其他UI模块,如对话框,通知和菜单.在一个Android应用中,所有用户界面元素都是由View和ViewGroup对象创建的.View 是一种可以在屏幕上绘制某种画面并且可以与用户互动的对象.ViewGroup对象则是为了定义布局的接口而保存其他View(和ViewGroup)对象.…
第4章 Action Bar Action Bar是一个能用于确定应用程序和用户的位置,并提供给用户操作和导航模式的窗口功能.如果需要显著地展示当前用户的操作或导航,应该使用Action Bar,因为Action Bar为用户提供了一个统一的跨应用程序和系统的接口,并且针对不同尺寸的屏幕优雅的处理了Action Bar的适配.你可以通过ActionBar API来控制它的行为和可视性,这些API添加于Android 3.0(API级别为11). Action Bar设计的目的是: ◆提供一个专门…
第2章 输入控件 输入控件是应用程序中用户接口的一种交互式组件.Android提供了大量的可供人们在UI中使用的控件,比如按钮.文本区域.(带滑块的)进度条.复选框.缩放按钮以及切换按钮等等. 在UI中增加输入控件就如同在XML布局中增加XNL元素一样简单.举例来说,下面为一个带有文本区域和按钮的布局.先看下图2-1的效果: 图2-1 各种输入控件 接下来然我们看下代码清单2-1是如何布局上面这些控件的: <?xml version="1.0" encoding="ut…
第9章 搜索 在android平台上搜索是一个核心的用户功能.无论内容位于设备或网络上,用户应该能够搜索任何对它们可用的数据.为了创建一个一致的用户搜索体验,Android平台提供了一个搜索框架帮助你的应用程序实现搜索功能.搜索框架提供了两种模式的搜索输入:一个在屏幕的顶部搜索对话框或搜索小部件(SearchView),您可以将其嵌入到你的activity布局.在这两种情况下,Android系统将通过传递一个查询到特定的activity协助你实现搜索.下图9-1显示了一个示例搜索对话框和可选的搜…
第5章 设置(Settings) 应用程序通常包括允许用户修改应用程序的特性和行为的设置功能.例如,一些应用程序允许用户指定通知是否启用或指定多久使用云同步数据.如果你想要为你的应用程序提供设置,你应该使用Android的Preference APIs来构建统一的接口.本章的主角就是Preference,下面先让我们看一下图5-1: : 图5-1 这是android短信息应用程序的设置界面截图.它使用就是就是Preference 5.1 概述 相比使用View对象来构建用户接main,设置是构建…
第6章 对话框 一个对话框是一个小窗口,提示用户做出决定或输入额外的信息,一个对话框不填充屏幕并且通常用于在程序运行时中断,然后弹出通知提示用户,从而直接影响到正在运行的程序.图6-1就是对话框的外观. 图6-1 Dialog类是所有具体对话框的基类,但你应该避免直接实例化Dialog.因为可能有些现成的已经给你提供好了,比如以下几种: ◆AlertDialog 一个对话框,可以显示一个标题(可选),三个按钮(可选),内容的列表(可选),或一个自定义布局. ◆DatePickerDialog或T…
第7章 通知 一个通知是一条消息他是显示于你应用程序之外的一个界面中.当你告诉系统要发布一个通知时,它首先作为一个icon出现在通知区域.为了看见通知的细节,用户可以点击通知区域展开一个新的界面.下面让我们来看一下图7-1和图7-2: 图7-1 通知出现在通知区域 图7-2 通知展开后的效果(drawer) 注意:除非特别注明外,本章指的都是NotificationCompat.Builder,它在v4 Support Library中有,正式添加于API Level 15.但有了v4 Supp…
第11章 样式和主题 style是用于指定View或window的外观和格式的一系列属性的集合.style可以指定高(height).填补(padding).字体颜色.字体大小.背景颜色等等属性.style定义在不同于用来设置布局的XML资源中.Android中的Syles与网页设计中的层叠样式表有着相似的原理——允许你将设计从内容中分离出来.例如,使用一个style,你可以将下面这个布局: <TextView android:layout_width="fill_parent"…
第3章 菜单 在许多不同类型的应用中,菜单通常是一种用户界面组件.为了提供给用户提供熟悉且一致的体验,你需要使用菜单API来展示用户动作和你Activity中的其他选项. 从安卓3.0系统(API level 11)开始,安卓设备已经不再需要提供专用的菜单按键.基于这种变化,安卓应用需要远离原来所依赖的传统6选项菜单盘,取而代之的是提供一个动作条来显示普通用户的动作.虽然设计方案和用户使用菜单选项的方式已经改变,但是从语义上定义的一套动作和选项仍然是基于菜单API的.这份指导书将介绍在所有版本的…
第8章 Toast通知 Toast通知是在窗口前面弹出的信息.它只占有信息所需要的空间量,并且用户当前的activity仍然是可见的.可互动的.这种通知自动地淡入和淡出,它不接受交互事件.他相当于一种临时的界面,用来反馈信息给用户,比如当你把某条信息保存为草稿的时候,会弹出如图8-1所示 下面的截图是闹铃应用程序的一个Toast通知示例.一旦开启闹铃,就会显示一个Toast,它提示你闹铃已经设定成功,如图1-9-1所示:. 图8-1 保存为草稿的toast效果 你可以通过Activity或Ser…
第10章 拖放 使用Android的拖放框架,允许用户通过一个图形化的拖放动作,把数据从当前布局中的一个视图上转移到另一个视图上.这个框架包含了一个拖动事件类,拖动监听器和一些辅助的方法和类. 虽然这个框架主要是为了数据的移动而设计的,但是你可以将这些移动的数据提供给其他的UI操作使用.例如:你可以创建一个当用户把一个彩色图标拖到另一个彩色图标上时,将颜色混合起来的应用.接下来本文将描述关于这个拖放框架的数据移动的内容. 10.1 概述 当用户执行一些被当作是开始拖动数据的信号的手势时,一个拖放…
第12章 自定义组件 Android平台提供了一套完备的.功能强大的组件化模型用于搭建用户界面,这套组件化模型以View和 ViewGroup这两个基础布局类为基础.平台本身已预先实现了多种用于构建界面的View子类和ViewGroup子类,他们被分别称为widget和layout. 界面工具集(widget)包括Button.TextView.EditText.ListView.CheckBox.RadioButton.Gallery.Spinner等这些常用部件以及有着专门用途的AutoCo…
第1-1章 Fragments 在Activity中的fragment代表的是一种行为或用户界面的一部分.你可以在activity中结合多个fragments创建一个多面板UI,并可以在多个activity中重复使用fragment.你可以把fragment看作是activity的模块化的一个部分,它有自己的生命周期,接收它自己的输入事件,并且当activity正运行时,可以添加或移除fragment(这有点像在不同的activity中重复使用的“sub activity”). Fragment…
第1章 属性动画及动画与图形概述 Android提供了一系列强大的API来把动画加到UI元素中,以及绘制自定义的2D和3D图像中去.下面的几节将综述这些可用的API以及系统的功能,同时帮你做出最优的选择 1.1 动画 Android框架提供了两种动画系统:属性动画(在Android3.0中加入)以及View动画.这两种动画系统都有可行的选择,但是总的来说,属性动画系统是更好的选择,因为它更加灵活,并提供了更多的特性.在这两种系统之外,你可以使用Drawable动画(帧动画),就是你可以加载画图资…
第1章 资源提供 你应该经常外部化你应用程序代码中的资源,比如图片.字符串等,这样有利于你独立处理这些资源.你也应该根据特定的设备配置提供一些可替代的资源,并且把他们分组保存在指定的路径名下.运行时,Android可以根据当前的配置使用适当的资源.比如,你也许会根据不同的屏幕尺寸提供不同的UI布局或是不同的语言设定提供不同的字符串.一旦你外部化了应用程序中的资源,你就能通过项目中的R类<class>生成的ID来调用他们.本章将向你展示怎么样分类你Android项目中的资源,以及怎么样给特定的设…
第1章 RenderScript RenderScript提供一个独立于平台并在本地运行的计算引擎,用它来加速你需要大量计算能力的应用.RenderScript是一个运行与Android上计算密集型的高性能架构.RenderScript主要是面向数据的并行计算,虽然串行计算密集型负载也不错.RenderScript运行时将在所有可用的处理器上并行工作,如多核CPU,GPU或DSP,让你专注于算法而不是调度工作或负载均衡.RenderScript对于图像处理,计算摄影或计算机视觉这样的应用程序尤其…
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/qq_35564145/article/details/90005345 1.首先,让日落可逆.也就是说,点击屏幕,等太阳落下后,再次点击屏幕,让太阳升起来. 动画集不能逆向执行,因此,你需要新建一个AnimatorSet. 2.第二个挑战是添加太阳动画特效,让它有规律地放大.缩小或是加一圈旋转的光线.(这实际是反复执行一段动画特效,可考虑使…
Fragments 英文原文:http://developer.android.com/guide/components/fragments.html 采集日期:2014-12-31 在本文中 设计理念 创建 Fragment 添加用户界面组件 把 Fragment 加入 Activity 管理 Fragment 执行 Fragment 事务 与 Activity 通讯 创建 Activity 的事件回调方法 在 Action Bar 中添加菜单项 处理 Fragment 的生命周期 与 Act…
Intents and Intent Filters 英文原文:http://developer.android.com/guide/components/intents-filters.html 采集(更新)日期:2014-7-10 搬迁自原博客:http://blog.sina.com.cn/s/blog_48d491300102uxxw.html 在本文中 Intent 种类 创建 Intent 显式 Intent 举例 隐式 Intent 举例 强制打开应用程序选择对话框 接收隐式 In…
Android SDK 开发指南 视频详解 以下视频是对融云 Android SDK 开发使用的详细讲解,您可以在阅读文档时配合学习.   更多视频教程如下: CSDN 融云 Android SDK 开发使用教学视频 InfoQ 融云 Android SDK 开发使用教学视频 前期准备 注册开发者帐号 开发者在集成融云即时通讯.实时网络能力前,需前往融云官方网站注册创建融云开发者帐号. 下载 SDK 您可以到融云官方网站下载融云 SDK.融云 SDK 各部分功能以插件化的形式独立提供,开发者可以…
Android SDK上手指南:下一步学习方向 2014-02-28 11:01 核子可乐 译 51CTO 字号:T | T 到目前为止,我们已经介绍过的知识足以帮助大家从非常理想的起点开始进行Android应用程序开发,但Android所提供的发挥空间还远不止这些.因此开发中的可能性也几乎没有穷尽.因此,我们需要为自己的下一步学习选择明确的方向.在今天的文章中,我们将把全部注意力集中在可资选择的未来学习对象上. AD:51CTO 网+ 第十二期沙龙:大话数据之美_如何用数据驱动用户体验 [51…
Android SDK上手指南:示例项目 2013-12-26 15:40 核子可乐译 51CTO 字号:T | T Android SDK示例项目中的应用能够执行种种功能,例如各类用户界面元素.数据管理.交互.媒体及连接使用说明等.即使大家不打算在自己的开发过程中用到示例所包含的某些特定应用类型,其中的大部分功能仍然适用于其它不同类型的应用. AD:51CTO 网+ 第十二期沙龙:大话数据之美_如何用数据驱动用户体验 介绍 Android SDK示例项目中的应用能够执行种种功能,例如各类用户界…
Android SDK上手指南:Activity与生命周期 2013-12-26 15:26 核子可乐译 51CTO 字号:T | T Activity生命周期并不仅仅在用户运行应用程序之后才开始生效,事实上它也影响着用户切出以及切回应用时得到的不同反馈.当我们开发一款应用时,首先需要牢记一点:用户会经常在执行过程中.在我们的应用与其它应用之间频繁切换. AD:51CTO 网+ 第十二期沙龙:大话数据之美_如何用数据驱动用户体验 介绍 Activity生命周期并不仅仅在用户运行应用程序之后才开始…
(转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 三.Android学习第三天——Activity的布局初步介绍 今天总结下Activity相关布局的一些知识: Activity最简单跟常用的布局分为两种: ①LinearLayout -- 线性布局 ②TableLayout -- 表格布局 ③RelativeLayout -- 相对布局(今后将会频繁的使用到这个布局) 下面来简单总结下前两种(线性/表格)布局当中常用到…
<Android 开发权威指南(第二版)>是畅销书<Android开发权威指南>的升级版,内容更新超过80%,是一本全面介绍Android应用开发的专著,拥有45 章精彩内容供读者学习. <Android开发权威指南(第二版)>全面介绍了Android应用开发的各种技术,主要内容包括Android的四大应 用程序组件(Activity.Service.Content Provider和Broadcast Receiver).布局.菜单.控件.资源和本地化.可视化UI设计…
Bound Services 英文原文:http://developer.android.com/guide/components/bound-services.html 采集(更新)日期:2014-12-24 原博客:http://blog.sina.com.cn/s/blog_48d4913001010696.html 在本文中 简介 创建一个 Bound 服务 扩展 Binder 类 使用 Messenger 绑定一个服务 管理 Bound 服务的生命周期 关键类 Service Serv…
Service 英文原文:http://developer.android.com/guide/components/services.html 采集(更新)日期:2014-12-23 原博客:http://blog.sina.com.cn/s/blog_48d49130010102pn.html 在本文中 概述 在manifest中声明服务 创建一个started服务 扩展IntentService类 扩展Service类 启动一个服务 终止一个服务 创建一个bound服务 向用户发送通知 在…
Task and Back Stack 英文原文: http://developer.android.com/guide/components/tasks-and-back-stack.html 采集(更新)日期:2014-12-16 在本文中 保存 Activity 状态 管理多个 Task 指定启动模式 处理 affinity 清理回退栈 启动任务 相关文章 Multitasking the Android Way 参阅 Android 设计 : 导航 <activity> manifes…
本文主要介绍如下三个Android支持库控件的配合使用: TabLayout:android.support.design.widget.TabLayout ViewPager:android.support.v4.view.ViewPager RecyclerView:android.support.v7.widget.RecyclerView 对于支持库的使用,这里稍作介绍: Android支持库包含常用的v4.v7.v13以及v17,注解支持(annotation),设计支持(materi…
前言 最近看了一本书<Android Gradle 权威指南>,收获挺多,就想着来记录一些读书笔记,方便后续查阅. 本篇内容是基于上一篇:读书笔记--Android Gradle权威指南(上) 上一篇中我们讲了: Groovy 基础 Android 项目中的 Gradle 2.1 gradle/wrapper 目录 2.2 gradlew.bat 文件 2.3 setting.gradle 文件 2.4 build.gradle 文 Gradle 基础 3.1 task 概念 3.2 grad…