E/AndroidRuntime( 1900): java.lang.StackOverflowError 
E/AndroidRuntime( 1900):     at android.graphics.Canvas.drawText(Canvas.java:1269) 
E/AndroidRuntime( 1900):     at android.text.Layout.draw(Layout.java:337) 
E/AndroidRuntime( 1900):     at android.widget.TextView.onDraw(TextView.java:4006) 
E/AndroidRuntime( 1900):     at android.view.View.draw(View.java:6057) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.drawChild(ViewGroup.java:1545) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1281) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.drawChild(ViewGroup.java:1543) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1281) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.drawChild(ViewGroup.java:1543) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1281) 
E/AndroidRuntime( 1900):     at android.view.View.draw(View.java:6060) 
E/AndroidRuntime( 1900):     at android.view.View.buildDrawingCache(View.java:5823) 
E/AndroidRuntime( 1900):     at android.view.View.getDrawingCache(View.java:5661) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.drawChild(ViewGroup.java:1481) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1281) 
E/AndroidRuntime( 1900):     at android.widget.AbsListView.dispatchDraw(AbsListView.java:1322) 
E/AndroidRuntime( 1900):     at android.widget.ListView.dispatchDraw(ListView.java:2841) 
E/AndroidRuntime( 1900):     at android.view.View.draw(View.java:6164) 
E/AndroidRuntime( 1900):     at android.widget.AbsListView.draw(AbsListView.java:2169) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.drawChild(ViewGroup.java:1545) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1281) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.drawChild(ViewGroup.java:1543) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1281) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.drawChild(ViewGroup.java:1543) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1281) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.drawChild(ViewGroup.java:1543) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1281) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.drawChild(ViewGroup.java:1543) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1281) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.drawChild(ViewGroup.java:1543) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1281) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.drawChild(ViewGroup.java:1543) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1281) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.drawChild(ViewGroup.java:1543) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1281) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.drawChild(ViewGroup.java:1543) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1281) 
E/AndroidRuntime( 1900):     at android.view.View.draw(View.java:6060) 
E/AndroidRuntime( 1900):     at android.widget.FrameLayout.draw(FrameLayout.java:352) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.drawChild(ViewGroup.java:1545) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1281) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.drawChild(ViewGroup.java:1543) 
E/AndroidRuntime( 1900):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1281) 
E/AndroidRuntime( 1900):     at android.view.View.draw(View.java:6060) 
E/AndroidRuntime( 1900):     at android.widget.FrameLayout.draw(FrameLayout.java:352) 
E/AndroidRuntime( 1900):     at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:2038) 
E/AndroidRuntime( 1900):     at android.view.ViewRoot.draw(ViewRoot.java:1233) 
E/AndroidRuntime( 1900):     at android.view.ViewRoot.performTraversals(ViewRoot.java:1042) 
E/AndroidRuntime( 1900):     at android.view.ViewRoot.handleMessage(ViewRoot.java:1502) 
E/AndroidRuntime( 1900):     at android.os.Handler.dispatchMessage(Handler.java:99) 
E/AndroidRuntime( 1900):     at android.os.Looper.loop(Looper.java:123) 
E/AndroidRuntime( 1900):     at android.app.ActivityThread.main(ActivityThread.java:3972) 
E/AndroidRuntime( 1900):     at java.lang.reflect.Method.invokeNative(Native Method) 
E/AndroidRuntime( 1900):     at java.lang.reflect.Method.invoke(Method.java:521) 
E/AndroidRuntime( 1900):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) 
E/AndroidRuntime( 1900):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:543) 
E/AndroidRuntime( 1900):     at dalvik.system.NativeStart.main(Native Method) 
I/Process (  833): Sending signal. PID: 1900 SIG: 3

解决方式:减少布局嵌套层数,特别是用到类似tabHost,ViewPager的控件时,要考虑到最底层的 activity 的

contentView的布局,尽量简化,多用RelativeLayout替代LinearLayout

同样再优化列表滑动效率的时候,简化item布局也能带来巨大的体验提升

android布局太深导致的 java.lang.StackOverflowError的更多相关文章

  1. Android 运行 gson.toJson(object) 报java.lang.StackOverflowError异常

    如以下的代码,运行后报java.lang.StackOverflowError错误: MusicSavedInfo musicSavedInfo=new MusicSavedInfo(currentS ...

  2. Jackson转换对象为json的时候报java.lang.stackoverflowerror

    无论在将一个对象转为json字符串的时候采用何种算法,如果你的对象的属性的类型不是基本类型或对应的引用类型,转换应该都不会就此结束,那么有一种方式可以导致这种转换陷入无限循环:将某个对象的属性设为对象 ...

  3. Android慎用layout嵌套, 尽量控制在5层下面java.lang.StackOverflowError

    一.探寻原因 在一个复杂的layout嵌套较多layout的android界面.在Android 2.3.内存较低 的机型上,出现 java.lang.StackOverflowError 这个Exc ...

  4. android studio: Rejecting re-init on previously-failed class java.lang.Class<android.support.v4.view.ViewCompat$OnUnhandledKeyEventListenerWrapper>: java.lang.NoClassDefFoundError: Failed resolution o

    今天在运行部署项目时logcat弹出下列错误: -- ::-/? E/Zygote: v2 -- ::-/? I/libpersona: KNOX_SDCARD checking this -- :: ...

  5. Android编译报Errors running builder 'Android Pre Compiler' on project 'XXX' java.lang.NullPointerException

    编译android时,遇到报错:Errors occurred during the build.Errors running builder 'Android Pre Compiler' on pr ...

  6. android java.lang.StackOverflowError

    转自:http://hi.baidu.com/424660053/item/bee53a2633870dccddf69a17 最近做项目出现一个java.lang.StackOverflowError ...

  7. 【Android】java.lang.StackOverflowError: stack size 8MB

    最近遇到的问题,报了两个错误,如下: java.lang.StackOverflowError: stack size 8MB android.os.TransactionTooLargeExcept ...

  8. java.lang.StackOverflowError解决

    在使用JPA的仓储repository进行查询时,经常用到findAllbyId的方法: repository.findAllbyId() 但如果像下面的代码,当list的size量太大的话,就会报栈 ...

  9. java.lang.StackOverflowError: stack size 8MB

    java.lang.StackOverflowError: stack size 8MB at android.text.TextUtils.getChars(TextUtils.java:86) a ...

随机推荐

  1. 【转】关于Python脚本开头两行的:#!/usr/bin/python和# -*- coding: utf-8 -*-的作用 – 指定文件编码类型

    原文网址:http://www.crifan.com/python_head_meaning_for_usr_bin_python_coding_utf-8/ #!/usr/bin/python 是用 ...

  2. linux下动态库编译的依赖问题

    这里主要是想试验一下,对一个具有多层嵌套的动态库进行编译时,是否要把最底层的库也包含进来的问题,结论是:只要直接依赖的库名称,不需要最底层库名称. 一,目录结构ZZZ├── add│   ├── ad ...

  3. C#操作Excel,对Sheet插入次序的控制 (有待完善)

    C#对Excel文件的操作,插入工作表(Worksheet)的方法是 Workbook.Worksheets.Add().通常情况下,我们在EXCEL的工作薄中,使用菜单操作:插入一个新的工作表,那么 ...

  4. 经典排序算法(Java版)

    1.冒泡排序 Bubble Sort 最简单的排序方法是冒泡排序方法.这种方法的基本思想是,将待排序的元素看作是竖着排列的“气泡”,较小的元素比较轻,从而要往上浮.在冒泡排序算法中我们要对这个“气泡” ...

  5. cp: omitting directory”错误的解释和解决办法

    在linux下拷贝的时候有时候会出现cp:omitting directory的错误 ,例如 cp:omitting directory "bbs" 说明bbs目录下面还有目录,不 ...

  6. 提高zxing生成二维码的容错率及zxing生成二维码的边框设置

    最近做了一个项目要生成二维码,跟几年前不同,最近大家都喜欢在二维码中间加logo. 加logo倒是不难,两个图片叠一起就是了,但是遇到一个新问题,logo加得太大的话,会导致二维码扫描不出来;加的太小 ...

  7. selenium + python 多浏览器测试

    selenium + python 多浏览器测试 支持库包 在学习 Python + Selenium 正篇之前,先来看下对多浏览器模拟的支持.目前selenium包中已包含webdriver,hel ...

  8. md5加密算法c语言版

    from: http://blog.sina.com.cn/s/blog_693de6100101kcu6.html 注:以下是md5加密算法c语言版(16/32位) ---------------- ...

  9. 【C#】构造函数的特点

    1.它的函数名与类名相同:2.它可以重载:3.不能指定返回类型,即使是void也不行:4.虽然在一般情况下,构造函数不被显式调用,而是在创建对象时自动被调用.但是并不是不能被显示调用.有些时候是一定要 ...

  10. 性能测试-ApacheBench

    基本简介 ApacheBench 是一个指令列程式,专门用来执行网站服务器的运行效能,特别是针对Apache 网站服务器.这原本是用来检测 Apache 网站服务器能够提供的效能,特别是可以看出Apa ...