Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
触摸按钮上的监听器并启动android_Android_Button_Andengine - Fatal编程技术网

触摸按钮上的监听器并启动android

触摸按钮上的监听器并启动android,android,button,andengine,Android,Button,Andengine,我在游戏中工作,我在精灵上注册了触摸事件作为按钮,我得到了以下错误,任何人都可以帮助解决这个问题 10-21 19:03:22.895: E/AndroidRuntime(17410): FATAL EXCEPTION: UpdateThread 10-21 19:03:22.895: E/AndroidRuntime(17410): java.lang.RuntimeException: Can't create handler inside thread that has not c

我在游戏中工作,我在精灵上注册了触摸事件作为按钮,我得到了以下错误,任何人都可以帮助解决这个问题

10-21 19:03:22.895: E/AndroidRuntime(17410): FATAL EXCEPTION: UpdateThread
    10-21 19:03:22.895: E/AndroidRuntime(17410): java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at android.os.Handler.<init>(Handler.java:121)
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at android.widget.Toast$TN.<init>(Toast.java:317)
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at android.widget.Toast.<init>(Toast.java:91)
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at android.widget.Toast.makeText(Toast.java:233)
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at test.matim.Level2GameScene$1.onAreaTouched(Level2GameScene.java:90)
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at org.andengine.entity.scene.Scene.onAreaTouchEvent(Scene.java:409)
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at org.andengine.entity.scene.Scene.onSceneTouchEvent(Scene.java:357)
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at org.andengine.engine.Engine.onTouchScene(Engine.java:452)
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at org.andengine.engine.Engine.onTouchEvent(Engine.java:438)
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at org.andengine.input.touch.controller.BaseTouchController$TouchEventRunnablePoolItem.run(BaseTouchController.java:102)
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at org.andengine.util.adt.pool.RunnablePoolUpdateHandler.onHandlePoolItem(RunnablePoolUpdateHandler.java:54)
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at org.andengine.util.adt.pool.RunnablePoolUpdateHandler.onHandlePoolItem(RunnablePoolUpdateHandler.java:1)
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at org.andengine.util.adt.pool.PoolUpdateHandler.onUpdate(PoolUpdateHandler.java:88)
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at org.andengine.input.touch.controller.BaseTouchController.onUpdate(BaseTouchController.java:62)
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at org.andengine.engine.Engine.onUpdate(Engine.java:584)
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at org.andengine.engine.Engine.onTickUpdate(Engine.java:548)
    10-21 19:03:22.895: E/AndroidRuntime(17410):    at org.andengine.engine.Engine$UpdateThread.run(Engine.java:820)

您应该像这样显示Toast,您应该在UiThread中进行调用

this.runOnUiThread(new Runnable() {
        @Override
        public void run() {
            Toast.makeText(Level2GameScene.this.activity, "Clicked", Toast.LENGTH_LONG).show();
        }
    });
this.runOnUiThread(new Runnable() {
        @Override
        public void run() {
            Toast.makeText(Level2GameScene.this.activity, "Clicked", Toast.LENGTH_LONG).show();
        }
    });