Also, I just fixed my Android 1.5 issue.  I simply made sure that I
did a .toString() on all my CharSequence objects before calling
setText().  That removes a bunch of calls from the stack as well as
plaing String objects are simpler to draw than a generic CharSequence
Of course, that assumes that all your items are simple non-styled
strings, which were in my case.


On Jun 8, 8:44 am, Zsolt Vasvari <[email protected]> wrote:
> Are you using the tab widget by any chance?  Because adding activities
> inside tabs will take up at least 5 layers in your UI hierarchy.  I am
> struggling with the same issue which only crashes on 1.5, 1.6+ is
> fine.
>
> On Jun 7, 9:16 pm, Thierry Legras <[email protected]> wrote:
>
>
>
> > Hi,
>
> > I am facing rare StackOverflowError in my application during UI redraw. Does
> > it mean memory is exhausted? How can i fix this? And finally how can i be
> > sure the issue will be definitevly fixed??
>
> > Any advice would be welcome :)
> > Thierry.
>
> > Here is the backtrace:
>
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): java.lang.StackOverflowError
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at android.text.method.
>
> > ReplacementTransformationMethod$ReplacementCharSequence.getChars(Replacemen­­tTransformationMethod.java:151)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.text.TextUtils.getChars(TextUtils.java:69)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.text.Layout$Ellipsizer.getChars(Layout.java:1778)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.text.TextUtils.getChars(TextUtils.java:69)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.graphics.Paint.measureText(Paint.java:1016)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.text.Styled.each(Styled.java:124)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.text.Styled.foreach(Styled.java:249)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.text.Styled.measureText(Styled.java:371)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.text.Layout.measureText(Layout.java:1600)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.text.Layout.getLineMax(Layout.java:654)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.text.Layout.getLineMax(Layout.java:628)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.text.Layout.getHorizontal(Layout.java:552)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.text.Layout.getHorizontal(Layout.java:513)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.text.Layout.getPrimaryHorizontal(Layout.java:498)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.widget.TextView.getFocusedRect(TextView.java:3962)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.FocusFinder.findNextFocus(FocusFinder.java:72)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.focusSearch(ViewGroup.java:473)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.focusSearch(ViewGroup.java:475)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.focusSearch(ViewGroup.java:475)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.focusSearch(ViewGroup.java:475)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.focusSearch(ViewGroup.java:475)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.focusSearch(ViewGroup.java:475)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.View.focusSearch(View.java:3032)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.widget.TextView.onCreateInputConnection(TextView.java:4342)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.inputmethod.InputMethodManager.startInputInner(InputMethodMana­­ger.java:933)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.inputmethod.InputMethodManager.checkFocus(InputMethodManager.j­­ava:1105)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.inputmethod.InputMethodManager.isActive(InputMethodManager.jav­­a:530)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.widget.TextView.onDraw(TextView.java:3893)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.View.draw(View.java:5838)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.drawChild(ViewGroup.java:1540)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.drawChild(ViewGroup.java:1538)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.View.draw(View.java:5841)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.drawChild(ViewGroup.java:1540)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.drawChild(ViewGroup.java:1538)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.View.draw(View.java:5944)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.widget.FrameLayout.draw(FrameLayout.java:352)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.drawChild(ViewGroup.java:1540)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.View.draw(View.java:5841)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.drawChild(ViewGroup.java:1540)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.drawChild(ViewGroup.java:1538)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.drawChild(ViewGroup.java:1538)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.drawChild(ViewGroup.java:1538)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.drawChild(ViewGroup.java:1538)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.drawChild(ViewGroup.java:1538)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.drawChild(ViewGroup.java:1538)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewGroup.dispatchDraw(ViewGroup.java:1282)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.View.draw(View.java:5841)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.widget.FrameLayout.draw(FrameLayout.java:352)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.jav­­a:1892)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewRoot.draw(ViewRoot.java:1237)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewRoot.performTraversals(ViewRoot.java:1045)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.view.ViewRoot.handleMessage(ViewRoot.java:1504)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.os.Handler.dispatchMessage(Handler.java:99)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.os.Looper.loop(Looper.java:123)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > android.app.ActivityThread.main(ActivityThread.java:3948)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at
> > java.lang.reflect.Method.invokeNative(Native Method)
> > 06-07 15:11:20.318 E/AndroidRuntime(22775): at java.lang.reflect.Metho
>
> > --
> > Thierry.- Hide quoted text -
>
> - Show quoted text -

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to