活动
一个活动就是一个用户界面屏幕。应用程序可以定义一个或活动,以处理程序不同阶段的任务。作为应用程序生命周期的一部分,每个活动都要保存自己的状态,以便日后还原这些状态
意图
意图是描述具体动作的机制,例如“拍照”,在Android中,几乎所有事情都要经历意图这个阶段,所以有很多机会可替换或重用很多组件
服务
服务实在后台运行的任务,无需用户直接与其交互,它与UNIX的守护进程类似。例如,有一个音乐播放器,可以通过某个活动来播放音乐,但是我们希望即使用户在使用其他程序,仍能继续播放音乐。所以,执行音乐播放的代码应该在某个服务中。之后,另一个活动可能会绑定到该服务上,告诉该服务切换音乐或停止播放。
内容提供者
内容提供者是封装在自定义API中的一组数据,可以读取该数据和向API中写入数据。这是在应用程序之间共享全局数据的最佳方式。例如,谷歌为联系人程序提供了一个内容提供者,任何要使用联系人信息的应用程序都可共享其中的所有信息,包括姓名、地址、电话号码等
应用程序框架
位于本机库和运行时上面,该层提供了在创建应用程序时需要使用的各种高级构建块,该框架最重要的部分包括下面5个:
活动管理器:控制应用程序的生命周期,同时维护一个公共的“后退栈”供用户导航
内容提供者:封装需要在应用程序之间共享的数据。
资源管理器:资源是程序中涉及的任何非代码内容。
位置管理器:Android手机始终知道目前所处的位置。
通知管理器:像收到短信、临近预约时间、临界状态报警等事件都可以通过友好的方式通知用户。
什么是dip和sp
过去,程序员通常以像素为单位设计计算机用户界面但是这样处理的问题在于,如果在一个每英寸点数(dpi)更高的新显示器上运行该程序,则用户界面会显得很小。与分辨率无关可以解决这一问题。
Dp(与密度无关的像素):一种基于屏幕密度的抽象单位。
Dip:与dp相同,多用于google的实例中。
Sp(与刻度无关的像素):可以根据用户的字体大小首选项进行缩放
建议始终使用sp作为文字大小的基本单位,dip作为其他元素的单位
Android中的应用大致分为三类:1,Android基本应用,包括传统的拨打电话,收发短信;2,作为移动互联网的客户端网络应用,即“手机小电脑”;3,手机游戏
Android游戏开发基本框架
1、 Android中的坐标系统
在Android中,屏幕的左上角是坐标系统的原点。原点向右延伸是X轴正方向,原点向下是Y轴正方向
2、 屏幕的宽和高
要获得屏幕的宽和高,首先从Activity对象中获得WindowManager对象,然后从WindowManager对象中获得Display对象,再从Display对象中获得屏幕的宽和高
//获得屏幕的宽和高
WindowManager windowManager = getWindowManager();
Display display = windowManager.getDefaultDisplay();
Int width = display.getWidth();
Int height = display.getHeight();
3、 边界的确定
如果当前视图的x坐标小于0,则当前视图左越界,如果当前视图的x坐标大于屏幕的宽,则右越界。
如果当前视图的y坐标小于0,则当前视图上越界,如果当前视图的y坐标大于屏幕的高,则下越界。
4、 视图的移动
游戏的实现过程就是不断改变视图的坐标位置,然后重新将他们绘制在屏幕上。坐标的位置改变和绘制过程是通过一定的逻辑来控制实现的。视图的移动就是通过改变视图坐标位置来实现的。改变了坐标在重新绘制,给我们的感觉是视图在移动
如果视图水平向左移动,X坐标减小,反之增大
如果视图垂直向上移动,y 坐标减小,反之增大
5、 Android游戏开发基本框架
基本对象有三个:1、图层对象,该图层对象定义图层的宽和高、图层的位置、图层的移动以及绘制方法等;2、视图对象,视图对象的只要作用是绘制图层对象、响应键盘事件和处理视图线程等,3、一个Activity控制游戏流程,例如启动游戏、暂停游戏、停止游戏等。
Android中的动画
在Android中提供2中动画方式:1、Tween动画,这种实现方式可以使视图组件移动、放大、缩小以及产生透明的变化。2、Frame动画,这是一种传统的动画方法,通过顺序播放排列好的图片来实现,类似电影。
Android系统Tween动画提供了四种实现方式(尺寸、位置、透明度和旋转);Tween动画的实现方式有2种:一种是直接硬编码的方式在程序代码中实现;另一种是在配置文件中定义,推荐使用配置,这种的扩展性较高。