关于手机连续按键的支持

来源:技术人生 责任编辑:栏目编辑 发表时间:2013-07-02 02:33 点击:
相信做手机开发的朋友都知道,手机上有一个连续按键的处理,j2me规范里面也提供了一个方法给予支持。现在市场上主流的机都支持了连续
按键,比如Nokia的S60系列,S40系列也是很多支持的,Nokia6600则不支持。国产品牌等机子的有些虚拟机不支持连续按键。
对于不支持连续按键的机子来说。用户操作时很不习惯的,特别是浏览一页比较大的文档,或者是玩手机游戏的用户来说。真是太不爽了,
有没有办法解决这个问题啊。有,那就是采用轮询的机制进行模拟连续按键。
说下原理吧:
其实很简单的,
只要在按下键盘的是做一个flag。
离开键盘的是做下flag。
启动一个线程进行监控,就可以了。
具体看代码吧。

import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Display;

public class TestCanvas extends MIDlet {
    public TestCanvas() {
    }
    protected void startApp() throws MIDletStateChangeException {
        Display.getDisplay(this).setCurrent(new TCanvas());
    }
    protected void pauseApp() {
    }
    protected void destroyApp(boolean _boolean) throws
            MIDletStateChangeException {
    }

}

class TCanvas extends Canvas {
    int key;
    boolean supper;
    boolean isKeyDown;
    long timeOut;
    public TCanvas() {
        new Thread(
                new Runnable() {
            public void run() {
                while (true) {
                    try {
                        Thread.sleep(50);
                    } catch (InterruptedException ex) {
                    }
                    if (isKeyDown) {
                        long curTime = System.currentTimeMillis();
                        if (curTime - timeOut >= 300) {
                            timeOut = curTime;
                            System.out.println("keyReleased==>" + key);
                            repaint();
                        }
           &

    相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      用户名: 验证码:点击我更换图片
      最新评论 更多>>

      推荐热点

      • Java编程语言的八大优点
      • JVM对象生命周期详细介绍
      • Java平台上的CRM系统
      • Java 算数测试小程序
      • Java环境 使用Resin在NT环境下配置JSP环境
      • Command(命令模式)
      • Java 一个简单的画图程序
      • Java 日历的小程序
      • Java 数组的复制
      网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
      Copyright © 2008-2015 计算机技术学习交流网. 版权所有

      豫ICP备11007008号-1