学习Android编程语言注意事宜

但是Android是开放平台,更有机会吸引到电信商和软件开发商,Android手机销售量将增加近10倍。对于Android来说将是一个革命性的突破,希望大家能够学习了解。

从以上的键盘代码我们可以看得出,程序中是通过触发来改变坐标(+1,-1)的方式来改蛇头的方向, 可见坐标在游戏编程中的作用。这个也是根据手机的屏幕是点阵的方式来显示, 所以坐标就是一个定位器。 在这里大家可能还有一个疑问。

就是就这个蛇什么能够以“7”字形来移动行走, 其实我们稍微仔细观察一下就知道了,在这里面, 他们也是通过坐标的传递来实现的, 只要把头部的坐标点依次赋给下一个点。

后面的每一个点都走过了头部所走过的点,而蛇的头部就是负责去获取坐标,整个蛇的行走起来就很自然和连贯。 坐标的方向变换又是通过判断那个方向按键的按下来改变的, 这样一来, 键盘的作用就发挥出来了,蛇吃苹果又是怎样去实现?

上面我所说到的坐标就起了作用。在蛇所经过的每一个坐标, 他们都要在苹果所在的(ArrayList mAppleList = new ArrayList())坐标集里面集依次判断,若是坐标相同,那个这个苹果就被蛇吃了 。

在J2ME中,刷新都是在canvas中通过调用线程结合repaint()来刷新, 他们使线程不断去循环,去调用canvas, 笔者在Android编程语言入门时也曾经想用J2ME的模式用在android 中,结果报异常了, 为什么呢?

很多人认为Dalvik虚拟机是一个Java虚拟机,因为Android编程语言恰恰就是Java语言。但是这种说法并不准确。因为Dalvik虚拟机并不是按照Java虚拟机的规范来实现的,两者并不兼容;同时还要两个明显的不同: Java虚拟机运行的是Java字节码。

而Dalvik虚拟机运行的则是其专有的文件格式DEX(Dalvik Executable)。所以在以前JAVA 里面能使用的模式。可能在android 里面用不起来 。在自带的例子里面他是通过消息的机制来刷新的。而在Android编程语言的消定义比较广泛。

比如,手机的暂停, 启动, 来电话、短信,键盘按下,弹起都是一个消息。总的来说, 事件就是消息;只要继承Handler类就可以对消息进行控制,或者处理, 根据具体情况进行具体处理:

class RefreshHandler extends Handler {  


 


//响应消息。  


 


public void handleMessage(Message msg) {  


 


SnakeView.this.update();// 重要页面  


 


SnakeView.this.invalidate();刷新页面  


 


}  


 


// 向外提供人工的调用消息的接口,  


 


public void sleep(long delayMillis) {  


 


this.removeMessages(0);//注消消息  


 


// 添加消息,  


 


sendMessageDelayed(obtainMessage(0), delayMillis);  


 


} 

相关推荐