StackOverflow error in Android
android, exception, stack-overflow, view
Solution
`StackOverflowError` Thrown when `the depth of the stack of the running program exceeds some platform or VM specific limit`. Typically, this will occur only when a program becomes infinitely recursive, but it can also occur in correctly written (but deeply recursive) programs.
Perhaps you have too many nested layouts.
Problem
I am running my app in Acer tablet, app get crash every time, and app is perfectly run on Samsung tablet. ``` 02-13 09:48:05.400: D/OpenGLRenderer(7270): Flushing caches (mode 0) 02-13 09:48:07.700: D/dalvikvm(7270): GC_CONCURRENT freed 13419K, 65% free 7568K/21063K, paused 2ms+4ms 02-13 09:48:07.830: I/dalvikvm(7270): threadid=1: stack overflow on call to Landroid/widget/TextView;.onCreateDrawableState:LI 02-13 09:48:07.830: I/dalvikvm(7270): method requires 36+20+20=76 bytes, fp is 0x4001732c (44 left) 02-13 09:48:07.830: I/dalvikvm(7270): expanding stack end (0x40017300 to 0x40017000) 02-13 09:48:07.830: I/dalvikvm(7270): Shrank stack (to 0x40017300, curFrame is 0x40017500) 02-13 09:48:07.830: D/AndroidRuntime(7270): Shutting down VM 02-13 09:48:07.830: W/dalvikvm(7270): threadid=1: thread exiting with uncaught exception (group=0x40a561f8) 02-13 09:48:07.860: E/AndroidRuntime(7270): FATAL EXCEPTION: main 02-13 09:48:07.860: E/AndroidRuntime(7270): java.lang.StackOverflowError 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.View.getDrawableState(View.java:11556) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.widget.TextView.onDraw(TextView.java:4863) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.View.draw(View.java:10983) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.View.getDisplayList(View.java:10422) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.ViewGroup.drawChild(ViewGroup.java:2850) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2489) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.View.draw(View.java:10986) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.View.getDisplayList(View.java:10422) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.ViewGroup.drawChild(ViewGroup.java:2850) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2489) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.View.getDisplayList(View.java:10420) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.ViewGroup.drawChild(ViewGroup.java:2850) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2489) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.View.getDisplayList(View.java:10420) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.ViewGroup.drawChild(ViewGroup.java:2850) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2489) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.View.getDisplayList(View.java:10420) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.ViewGroup.drawChild(ViewGroup.java:2850) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2489) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.View.draw(View.java:10986) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.widget.FrameLayout.draw(FrameLayout.java:450) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.widget.ScrollView.draw(ScrollView.java:1524) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.View.getDisplayList(View.java:10422) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.ViewGroup.drawChild(ViewGroup.java:2850) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2489) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.View.draw(View.java:10986) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.widget.FrameLayout.draw(FrameLayout.java:450) 02-13 09:48:07.860: E/AndroidRuntime(7270): at android.view.View.getDisplayList(View.java:10422) ``` Please help me how to solve this issue