我正在尝试制作一款安卓游戏,但每当我加载它时,游戏崩溃并显示为日志:
01-30 05:46:50.557: W/dalvikvm(30824): threadid=11: thread exiting with uncaught exception (group=0x41e38300)
01-30 05:46:50.557: E/AndroidRuntime(30824): FATAL EXCEPTION: GLThread 636
01-30 05:46:50.557: E/AndroidRuntime(30824): java.lang.IllegalArgumentException: Bad position (limit 0): 2
01-30 05:46:50.557: E/AndroidRuntime(30824): at java.nio.Buffer.positionImpl(Buffer.java:364)
01-30 05:46:50.557: E/AndroidRuntime(30824): at java.nio.Buffer.position(Buffer.java:358)
01-30 05:46:50.557: E/AndroidRuntime(30824): at com.badlogic.androidgames.framework.gl.Vertices.bind(Vertices.java:71)
01-30 05:46:50.557: E/AndroidRuntime(30824): at com.badlogic.androidgames.framework.gl.SpriteBatcher.endBatch(SpriteBatcher.java:44)
01-30 05:46:50.557: E/AndroidRuntime(30824): at com.customgame.GameScreen.present(GameScreen.java:223)
01-30 05:46:50.557: E/AndroidRuntime(30824): at com.badlogic.androidgames.framework.impl.GLGame.onDrawFrame(GLGame.java:97)
01-30 05:46:50.557: E/AndroidRuntime(30824): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1516)
01-30 05:46:50.557: E/AndroidRuntime(30824): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1240)
有人可以帮我解决问题所在吗?主要是,当他们说第二排的不良位置时,我不明白这意味着什么。这是否意味着我不允许在特定区域放置精灵?
答案 0 :(得分:0)
Buffer
个对象有capacity
(缓冲区可容纳的数据量),limit
(缓冲区可以访问数据的距离)和position
(读取或写入数据的偏移量)。 Vertices.bind()
正在尝试将位置设置为2,但缓冲区的限制已设置为零。
另请参阅NIO Buffer docs。
答案 1 :(得分:0)
就我而言,发生此错误是因为我没有停止蓝牙扫描。我开始进行蓝牙扫描,选择了设备并继续使用该应用程序。
BluetoothScanActivity
崩溃后启动的所有活动都崩溃了,应用进入了BluetoothScanActivity
。这种情况有时在几秒钟后,有时在几分钟后。
此问题已通过在onStop
的{{1}}-
BluetoothScanActivity