安卓
来源:互联网 发布:java开发人员培训机构 编辑:程序博客网 时间:2024/04/20 11:16
java.lang.ClassCastException: android.widget.RelativeLayout$LayoutParams cannot be cast to android.widget.AbsListView$LayoutParams
java.lang.ClassCastException: android.widget.RelativeLayout$LayoutParams cannot be cast to android.widget.AbsListView$LayoutParams
FrameLayout的父控件是一个LinearLayout控件,问题出在,LinearLayout为子控件分配空间的时候,获取FrameLayout的LayoutParams的必须为LinearLayout.LayoutParams,而非FrameLayout.LayoutParams。
简单的举个栗子说明一下:最外层有ReLativeLayout A,里面有两个LinearLayout B、C,而B中又有一个一个FrameLayout D。如果要在代码里设置B的LayoutParams,B的LayoutParams要为RelativeLayout.LayoutParams。
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT); B.setLayoutParams(params);
而D要设置的话,需要:
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, 0); params.weight = 8; D.setLayoutParams(params);
0 0
- 安卓
- 安卓
- 安卓
- 安卓
- 【安卓】
- 安卓
- 安卓
- 安卓
- 安卓
- 安卓
- 安卓
- 安卓
- 安卓
- 安卓学习-安卓环境布置
- 安卓开发-安卓启动过程
- 安卓开发-安卓与sqlite
- 安卓开发工具安卓
- 安卓断点续传支持安卓6.0
- DFS一直写不好啊啊啊
- 关于快速排序
- 设备World Wide Number的搜集方式
- JavaScript科普小知识
- Map获取键值
- 安卓
- 关于VB.NET中,如何得知多个radiobutton中哪个被选中(checked)
- 快播案上诉是否会对流量矿石有影响?
- shell基础用法
- AFNetworking3.0封装
- UVa1625
- each
- jvm
- 信息检索(IR)的评价指标介绍 - 准确率、召回率、F1、mAP、ROC、AUC