onActivityResult fc при использовании SurfaceView на Android - PullRequest
0 голосов
/ 05 сентября 2010

Фк моего приложения, когда действие, использующее SurfaceView в качестве представления содержимого, вызывает startActivityForResult (...), а действие, которое было начато, вызывает finish ()

Этого не произойдет, если я изменю представление содержимого на что-то другое, чем SurfaceView.

Это будет запрошенный logcat:

09-05 00: 17: 18.926: ОШИБКА / AndroidRuntime (339): необработанный обработчик: выход из основного потока из-за необработанного исключения 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): java.lang.IllegalThreadStateException: поток уже запущен. 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): на java.lang.Thread.start (Thread.java:1322) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): в fi.mikuz.soundboards.GraphicalSoundboardEditor $ DrawingPanel.surfaceCreated (GraphicalSoundboardEditor.java:426) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): на android.view.SurfaceView.updateWindow (SurfaceView.java:454) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): на android.view.SurfaceView.onWindowVisibilityChanged (SurfaceView.java:189) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): на android.view.View.dispatchWindowVisibilityChanged (View.java:3782) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): на android.view.ViewGroup.dispatchWindowVisibilityChanged (ViewGroup.java:692) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): на android.view.ViewGroup.dispatchWindowVisibilityChanged (ViewGroup.java:692) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): на android.view.ViewGroup.dispatchWindowVisibilityChanged (ViewGroup.java:692) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): на android.view.ViewRoot.performTraversals (ViewRoot.java:706) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): на android.view.ViewRoot.handleMessage (ViewRoot.java:1633) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): на android.os.Handler.dispatchMessage (Handler.java:99) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): на android.os.Looper.loop (Looper.java:123) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): на android.app.ActivityThread.main (ActivityThread.java:4363) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): на java.lang.reflect.Method.invokeNative (собственный метод) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): в java.lang.reflect.Method.invoke (Method.java:521) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): на com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:860) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): на com.android.internal.os.ZygoteInit.main (ZygoteInit.java:618) 09-05 00: 17: 18.937: ОШИБКА / AndroidRuntime (339): в dalvik.system.NativeStart.main (собственный метод)

1 Ответ

0 голосов
/ 05 сентября 2010
09-05 00:17:18.926: ERROR/AndroidRuntime(339): Uncaught handler: thread main exiting due to uncaught exception
09-05 00:17:18.937: ERROR/AndroidRuntime(339): java.lang.IllegalThreadStateException: Thread already started.
09-05 00:17:18.937: ERROR/AndroidRuntime(339): at java.lang.Thread.start(Thread.java:1322)
09-05 00:17:18.937: ERROR/AndroidRuntime(339): at fi.mikuz.soundboards.GraphicalSoundboardEditor$DrawingPanel.surfaceCreated(GraphicalSoundboardEditor.java:426)

Исправьте ваш код так, чтобы вы не запускали уже запущенный поток, и это исключение исчезнет.

...