关于listView设置背景引起StackOverflowError 的疑惑
16lz
2021-12-04
当listview中的布局设置成
调整后不报错的布局如下:
第一个会报StackOverflowError,于是我把背景图片设置到listView中,就不会再报堆溢出了,不知道什么原因。
更让我疑惑的是,第一个的那个布局在listview中数据从网络上拿到时也不会报错,只有当listView中数据硬编码到本地才会报错,这究竟是什么原因呢?
后来查了相关资料发现 listview的布局不能弄得太复杂,还有用framelayout这种布局的话也是会有一定关系的。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="fill_parent" android:layout_height="wrap_content"android:background="@drawable/bg" android:orientation="vertical"><FrameLayout android:orientation="vertical"android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="10px"android:layout_marginLeft="2px" android:layout_marginRight="2px"android:background="@drawable/list_bg"><ListView android:id="@android:id/list"android:layout_width="fill_parent"android:layout_height="wrap_content"></ListView></FrameLayout></LinearLayout>
调整后不报错的布局如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="fill_parent" android:layout_height="wrap_content"android:background="@drawable/bg" android:orientation="vertical"><FrameLayout android:orientation="vertical"android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="10px"android:layout_marginLeft="2px" android:layout_marginRight="2px"><ListView android:id="@android:id/list"android:layout_width="fill_parent"android:layout_height="wrap_content"android:background="@drawable/list_bg"></ListView></FrameLayout></LinearLayout>
第一个会报StackOverflowError,于是我把背景图片设置到listView中,就不会再报堆溢出了,不知道什么原因。
更让我疑惑的是,第一个的那个布局在listview中数据从网络上拿到时也不会报错,只有当listView中数据硬编码到本地才会报错,这究竟是什么原因呢?
后来查了相关资料发现 listview的布局不能弄得太复杂,还有用framelayout这种布局的话也是会有一定关系的。
更多相关文章
- Android-- Intent.Action(1)
- Android对接webService接口
- Android(安卓)取出 图片以字节形式存放到数据库的数据,并将图片显
- 整理出来的一些Android基础知识
- Android的关键的持久数据应该在onPause()方法中保存
- Android(安卓)手机存储文件各种路径
- Android通过http协议POST传输方式
- Android官方ORM Room介绍
- android 建数据库 SQLite 存储sd 卡或者内存