amlcurran / ShowcaseView

[Archived] Highlight the best bits of your app to users quickly, simply, and cool...ly
5.6k stars 1.29k forks source link

IllegalArgumentException when calling dispatchDraw #429

Open xtremebiker opened 7 years ago

xtremebiker commented 7 years ago

I got the following error in my app, with ShowcaseView 5.4.0. I guess it hasn't been fixed for 5.4.3. That's the trace:

java.lang.IllegalArgumentException: Layout: -136 < 0 at android.text.Layout.<init>(Layout.java:139) at android.text.DynamicLayout.<init>(DynamicLayout.java:100) at android.text.DynamicLayout.<init>(DynamicLayout.java:81) at android.text.DynamicLayout.<init>(DynamicLayout.java:64) at android.text.DynamicLayout.<init>(DynamicLayout.java:50) at com.github.amlcurran.showcaseview.TextDrawer.draw(TextDrawer.java:77) at com.github.amlcurran.showcaseview.ShowcaseView.dispatchDraw(ShowcaseView.java:301) at android.view.View.updateDisplayListIfDirty(View.java:14252) at android.view.View.getDisplayList(View.java:14279) at android.view.View.draw(View.java:15049) at android.view.ViewGroup.drawChild(ViewGroup.java:3406) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3199) at android.view.View.updateDisplayListIfDirty(View.java:14252) at android.view.View.getDisplayList(View.java:14279) at android.view.View.draw(View.java:15049) at android.view.ViewGroup.drawChild(ViewGroup.java:3406) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3199) at android.view.View.updateDisplayListIfDirty(View.java:14252) at android.view.View.getDisplayList(View.java:14279) at android.view.View.draw(View.java:15049) at android.view.ViewGroup.drawChild(ViewGroup.java:3406) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3199) at android.view.View.updateDisplayListIfDirty(View.java:14252) at android.view.View.getDisplayList(View.java:14279) at android.view.View.draw(View.java:15049) at android.view.ViewGroup.drawChild(ViewGroup.java:3406) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3199) at android.view.View.updateDisplayListIfDirty(View.java:14252) at android.view.View.getDisplayList(View.java:14279) at android.view.View.draw(View.java:15049) at android.view.ViewGroup.drawChild(ViewGroup.java:3406) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3199) at android.view.View.draw(View.java:15324) at android.widget.FrameLayout.draw(FrameLayout.java:598) at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:2653) at android.view.View.updateDisplayListIfDirty(View.java:14257) at android.view.View.getDisplayList(View.java:14279) at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:273) at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:279) at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:318) at android.view.ViewRootImpl.draw(ViewRootImpl.java:2540) at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2356) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1986) at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1065) at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5901) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:767) at android.view.Choreographer.doCallbacks(Choreographer.java:580) at android.view.Choreographer.doFrame(Choreographer.java:550) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:753) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:211) at android.app.ActivityThread.main(ActivityThread.java:5389) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1020) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:815)

Best regards and thanks for all the work made in the library.