Приложение отлично работает в эмуляторе.Эта проблема проявляется на телефоне Sprint HTC Android.
Программа использует функцию TabActivity, которая содержит MapHandler / ItemizedOverlay.При касании маркера на карте вызывается метод наложения onTap.В этом методе отображается диалоговое окно с предупреждением, после чего после нажатия кнопки вид переключается на вид, содержащий подробную информацию о местоположении.Вид переключается путем отправки сообщения в MapHandler, который, в свою очередь, использует переключатель просмотров, чтобы поменять их местами.Опять же, в эмуляторе нет проблем, только на телефоне.
Вот трассировка стека, которая приводит:
10-24 15:49:33.055: ERROR/AndroidRuntime(10930): Uncaught handler: thread main exiting due to uncaught exception
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): java.lang.StackOverflowError
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.text.BoringLayout.draw(BoringLayout.java:356)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.widget.TextView.onDraw(TextView.java:3934)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.View.draw(View.java:5838)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.drawChild(ViewGroup.java:1540)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.drawChild(ViewGroup.java:1538)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.View.draw(View.java:5944)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.widget.FrameLayout.draw(FrameLayout.java:352)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.drawChild(ViewGroup.java:1540)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.drawChild(ViewGroup.java:1538)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.drawChild(ViewGroup.java:1538)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.drawChild(ViewGroup.java:1538)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.drawChild(ViewGroup.java:1538)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.drawChild(ViewGroup.java:1538)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.drawChild(ViewGroup.java:1538)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.View.draw(View.java:5841)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.widget.FrameLayout.draw(FrameLayout.java:352)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.drawChild(ViewGroup.java:1540)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.drawChild(ViewGroup.java:1538)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.drawChild(ViewGroup.java:1538)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.drawChild(ViewGroup.java:1538)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.drawChild(ViewGroup.java:1538)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.View.draw(View.java:5841)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.widget.FrameLayout.draw(FrameLayout.java:352)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.drawChild(ViewGroup.java:1540)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.drawChild(ViewGroup.java:1538)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.View.draw(View.java:5841)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.widget.FrameLayout.draw(FrameLayout.java:352)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:1896)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewRoot.draw(ViewRoot.java:1237)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewRoot.performTraversals(ViewRoot.java:1045)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.view.ViewRoot.handleMessage(ViewRoot.java:1504)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.os.Handler.dispatchMessage(Handler.java:99)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.os.Looper.loop(Looper.java:123)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at android.app.ActivityThread.main(ActivityThread.java:4077)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at java.lang.reflect.Method.invokeNative(Native Method)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at java.lang.reflect.Method.invoke(Method.java:521)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:782)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:540)
10-24 15:49:33.360: ERROR/AndroidRuntime(10930): at dalvik.system.NativeStart.main(Native Method)
Я немного подозрительно отношусь к методу sendmessage / viewswitcher.
У кого-нибудь есть идеи?