0

我的应用程序针对 2.2 版,似乎在我测试过的 3 台设备上运行良好(2.2 版和 2.3 版)

但是,我只是在 Google Nexus 10 平板电脑上运行它,并且启动画面工作正常,并采用触摸输入来启动下一个活动(基于 SurfaceView 使用多线程的菜单系统),虽然它显示/动画正常,但没有按钮正在工作 - 我不确定从哪里开始,假设为旧 Android API 编写的应用程序与新版本的操作系统不兼容,我错了吗?新版本肯定向后兼容吗?

谢谢大家!!

编辑:如果我反复点击开始按钮,Logcat 会显示:

在此处输入图像描述

所以不知道为什么在 JB 上这样做,但在运行旧操作系统的设备上可以 - 谢谢大家。

编辑2:

“按钮”释放代码(在“按钮”按下后):

if (event.getAction()==MotionEvent.ACTION_UP){      

Intent StartNewGame = new Intent((Activity) getContext(), StartGame.class);     

    getContext().startActivity(StartGame);  

// Oddly, if I put a System.exit(0); here, game activity starts and everything is fine - obviously this is only for testing and needs to be removed.

return true;}

    }
4

1 回答 1

0
public int nextInt(int n) {
    if (n > 0) {
        if ((n & -n) == n) {
            return (int) ((n * (long) next(31)) >> 31);
        }
        int bits, val;
        do {
            bits = next(31);
            val = bits % n;
        } while (bits - val + (n - 1) < 0);
        return val;
    }
    throw new IllegalArgumentException();
}

那是 4.1 的源代码,所以看起来你是如何将 0 传递给函数的,有什么办法可以在你的代码中发生这种情况吗?

于 2013-01-26T04:16:44.490 回答