- 浏览: 64144 次
-
最新评论
文章列表
J2ME游戏按键处理方法简述
摘要:在游戏当中很多时候,要求按键有更多的响应方式,我们的问题就多起来了。
正文:
1.ScanKey()方法
这种方法使在keyPressed()、keyRelease()回调中记录按键的情况,每次Game Loop之前使用ScanKey()函数获得需要的记录情况,这次GameLoop都会使用它产生的按键结果。
这种方法的缺陷是两次Scankey()的时间间隔内,按键的记录可能会被漏掉,这个时间间隔越长(Gameloop运行时间长),这种现象出现的机会就越大。当然,改变按键的记录和读取方法,可以解决大部分出现的问题。
ScanKey()方法根据调 ...
- 2013-03-06 16:09
- 浏览 667
- 评论(0)
在J2ME的低级用户界面编程中,进行事件处理是经常使用到的技术之一,因为处理手机键盘上的按键事件是最常使用到的一种,所以就以此为中心,介绍一下实际使用过程中三种处理方式进行说明:
1、 覆盖keyPressed方法
在继承了Canvas的界面中,如果需要进行按键的处理,我们只需要在该类中覆盖Canvas类里面的这个方法,当手机按键被按下时,系统会自动调用该方法,并把被按下的按键的键值(keyCode)作为参数传递进来。所以如果需要处理按键事件,只需要在该方法内部检测按下的按键的键值就可以了。
在手机键盘上,可以简单的分为功能键区域和数字键区域,功能键指手机上的左右软键,中间的导 ...
- 2013-03-06 16:03
- 浏览 499
- 评论(0)
J2ME上的键盘响应估计是继画图后出现Bug最多的地方了,尤其像手机游戏这种键盘操作较多的J2ME程序。在工作的过程中CoCoMo曾不止一次的被问及有关键盘响应的问题,pigham前两天还在为他的游戏在7210上按键不能及时响应而发愁,就在刚才我还在努力的解决着S700上不支持 getGameAction()的问题。虽然CoCoMo在这个行业已经工作了一年多了,但是键盘响应的bug仍然时常蹦出来刺激我的神经,所以千万不要小瞧了这个不起眼的keyPressed()
keyPressed()响应的位置:
弄清楚keyPressed()响应的位置对最终解决按键响应不及时很有帮助。理论上keyP ...
- 2013-03-06 16:00
- 浏览 507
- 评论(0)
rm);<wbr><br><span style="font-size:12px; line-height:1.3em">2.</span><wbr></wbr></wbr>
<wbr><wbr><wbr><wbr><wbr><wbr><span style="font-size:12px"><span style="font-size:12px; line-height: ...
- 2013-03-06 15:55
- 浏览 686
- 评论(0)
处理笔的移动
处理 PDA 显示器上笔的移动的事件处理程序有:penDown、penMove 和 penUp。
l 当用户将笔在显示器上移动时,penDown() 方法将被调用,它传递显示器上笔的放置点的 X 和 Y 轴坐标。
public void penDown( int x, int y )
l 当用户在显示器上移动笔时 penMove() 过程将被调用。X 和 Y 轴坐标定义笔的当前位置。
public void penMove( int x, int y )
l 当用户将笔从显示器上移开时 penUp() 过程将被调用,它传递两个参数:笔被移开点的 X 和 Y 轴坐标 ...
- 2013-03-06 15:43
- 浏览 633
- 评论(0)
JAVA手机软件JAR和JAD文件内部文件详解.核心提示:JAVA手机程序(包括应用程序,游戏和电子书等等),主要都是由两个文件组成,一个是*.JAR,一个是*.JAD。
下面给大家讲解一下他们的主要性质和信息JAR文件包含这个程序的Java类,以及有关的其他文件诸如图像和应用程序数据(即通常所说的资源等信息)。
JAR文件下的manifest.mf是描述JAR内容的清单文件,这也是跟我们玩家有关的信息,在这里重点介绍。至于其他的信息是程序开发者关心的,就不多说了。
manifest.mf文件所有可能的信息如下:
MIDlet-Name ---MIDlet程序包的名称。
MIDle ...
- 2013-03-06 15:39
- 浏览 596
- 评论(0)
打开Java的JAR文件我们经常可以看到文件中包含着一个META-INF目录,这个目录下会有一些文件,其中必有一个MANIFEST.MF,这个文件描述了该Jar文件的很多信息,下面将详细介绍MANIFEST.MF文件的内容,先来看struts.jar中包含的MANIFEST.MF文件内容:
Manifest-Version: 1.0
Created-By: Apache Ant 1.5.1
Extension-Name: Struts Framework
Specification-Title: Struts Framework
Specification-Vendor: Apac ...
- 2013-03-06 15:38
- 浏览 922
- 评论(0)
文件,打包成 MIDP认可的可执行文件。后缀名为jad的文件是jar文件的描述文件,jad文件详细介绍见第二节。
在仿真器或手机上安装运行
有了jar及jad文文件后,我们就可以把它们放到仿真器或手机上运行了。至于如何把它们放到手机上,根据手机的功能不同,有如下方法可以选择:
l 使用数据线,将PC与手机相连,下载文件
l 使用红外线
l 使用蓝牙
l 使用OTA空中下载(利用短信/WAP)
10.2 MIDlet Suites
10.2.1 JAM
JAM (Java Application Manager) 中文一般翻译为应用程序管理器。在有些文档中,J ...
- 2013-03-06 15:35
- 浏览 763
- 评论(0)
百科名片
应用程序开发联系会议
应用程序开发联系会议通过紧密而集中的讨论得以将客户与开发人员间的合作伙伴关系付诸于实践( Wood and Silver 1995)。
目录
简介
使用方法
JAD相关
JAD的作用
- 2013-03-06 15:30
- 浏览 669
- 评论(0)
概述
J2ME发布包由一个包含软件的JAR文件,和一个用来向J2ME容器描述源文件内容相关信息的JAD文件组成。
EclipseME自带了一个JAD编辑器,帮你处理JAD文件的格式等细节题目。 使用这个编辑器,你可以填进所有必须的项目,使设备能够正确的支持你的MIDlet。 方便起见,组成JAD文件的项目分布在编辑器的几个不同面板中, 编辑器窗口底部的一排就是这些面板的标签。
必选属性(Required)面板
JAD编辑器的第一个标签对应的是必选属性(Required)面板。
此面板上的项目是:
项目
内容
Midlet Jar URL
JAR文件的URL地址 ...
- 2013-03-06 15:27
- 浏览 591
- 评论(0)
1、入口类:DrawActivity
package com.ray.graph;
import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import android.view.WindowManager;
public class DrawActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(B ...
- 2013-03-04 09:23
- 浏览 745
- 评论(0)
最近练手android,准备编一系列的小游戏,第一个:扫雷。思路:
1、点击开始按钮生成雷区。(使用按钮控件就足够了,还可以方便的监听点击事件)
2、点击雷区的按钮开始判断是否有雷,点中地雷游戏结束,点中空地则检查四周的雷的数量并显示出来。
3、空地全部点开以后游戏胜利。首先要确定雷区的大小,因为手机屏幕较小,所以选择8*8的小雷区。<wbr><wbr><wbr> intMAX_ROW=8;//8</wbr></wbr></wbr>行<wbr><wbr><wbr> intMAX_C= ...
- 2013-03-04 09:20
- 浏览 713
- 评论(0)
俄罗斯方块,其实就是一个一个的方块往下掉,所以首先要构建一个方块的类。
下面的类里面有一个3维的数组,其实就是把几个二维数组排列起来,每个2维数组为4*4的,里面的数据为1则表示有小方块,比如第一个:
{1,1,0,0},
{1,1,0,0},
{0,0,0,0},
{0,0,0,0} 就构成了一个田字形方块。
这样,别的地方要用方块,直接把Square.msquare[i][][],的后两位用for循环4*4遍历下就行了,i的值代表方块的形状。
各种变化的形状我们也放进了表里,变幻时直接改变i就行了,很方便。
public class Square {
public ...
- 2013-03-04 09:07
- 浏览 972
- 评论(0)
package com.android.snack;
import android.app.Activity;
import android.os.Bundle;
public class MainSnack extends Activity {
SnackView sv;
public voidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
sv = new SnackView(this, null);
setConten ...
- 2013-03-04 08:30
- 浏览 761
- 评论(0)
写了一个简单的贪吃蛇游戏、、、
主要思路
一、用一个int 数组保存蛇身坐标,snake[i*2+0]为X轴,snake[i*2+1]为Y轴,
二、定蛇头的X轴和Y轴 并赋值,snake[0]+=snakeX; snake[1]+=snakeY;
蛇身移动,从蛇头开始把坐标重新赋值到下一个。
for(int i=snakeLength-1;i>0;i--){
snake[i*2+0]=snake[(i-1)*2+0];
snake[i*2+1]=snake[(i-1)*2+1];
}
三、Random 随机等到食物坐标,没有判断 ...
- 2013-03-04 08:06
- 浏览 725
- 评论(0)