文档章节

Android 动态设置布局文件的exception

深圳_小白菜
 深圳_小白菜
发布于 2014/04/22 10:29
字数 195
阅读 915
收藏 0

错误信息:

 java.lang.ClassCastException: android.widget.LinearLayout$LayoutParams cannot be cast to android.widget.RelativeLayout$LayoutParams
     at android.widget.RelativeLayout$DependencyGraph.findRoots(RelativeLayout.java:1317)
     at android.widget.RelativeLayout$DependencyGraph.getSortedViews(RelativeLayout.java:1264)
     at android.widget.RelativeLayout.sortChildren(RelativeLayout.java:292)
     at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:314)
     at android.view.View.measure(View.java:12728)
     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
     at android.widget.FrameLayout.onMeasure(FrameLayout.java:293)
     at android.view.View.measure(View.java:12728)
     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
     at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1369)
     at android.widget.LinearLayout.measureVertical(LinearLayout.java:660)
     at android.widget.LinearLayout.onMeasure(LinearLayout.java:553)
     at android.view.View.measure(View.java:12728)
     at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
     at android.widget.FrameLayout.onMeasure(FrameLayout.java:293)
     at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2095)
     at android.view.View.measure(View.java:12728)
     at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1064)
     at android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2442)
     at android.os.Handler.dispatchMessage(Handler.java:99)
     at android.os.Looper.loop(Looper.java:137)
     at android.app.ActivityThread.main(ActivityThread.java:4426)
     at java.lang.reflect.Method.invokeNative(Native Method)
     at java.lang.reflect.Method.invoke(Method.java:511)
     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:788)
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555)
     at dalvik.system.NativeStart.main(Native Method)

解决办法:

如果你要将一个view添加到另一个布局中,你必须设定该View的布局参数为其父类所使用的布局参数类型。

RelativeLayout.LayoutParams layoutParams=new RelativeLayout.
                LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
        layoutParams.setMargins(0, 120, 0, 0);

© 著作权归作者所有

共有 人打赏支持
深圳_小白菜
粉丝 1
博文 106
码字总数 26076
作品 0
深圳
程序员
Android LayoutInflater的使用

Inflater英文意思是膨胀,在Android中应该是扩展的意思吧。 LayoutInflater的作用类似于 findViewById(),不同点是LayoutInflater是用来找layout文件夹下的xml布局文件,并且实例化!而 find...

子曰疯
2013/09/03
0
2
Android 自定义组合控件小结

引言 接触Android UI开发的这段时间以来,对自定义组合控件有了一定的了解,为此小结一下,本文小结内容主要讨论的是如何使用Android SDK提供的布局和控件组成一个功能完整组合控件并将其封装...

程序袁_绪龙
2014/09/24
0
0
Android手机平板两不误,使用Fragment实现兼容手机和平板的程序

记得我之前参与开发过一个华为的项目,要求程序可以支持好几种终端设备,其中就包括Android手机和Android Pad。然后为了节省人力,公司无节操地让Android手机和Android Pad都由我们团队开发。...

带梦想一7飞
2013/06/05
0
0
Android手机平板两不误,使用Fragment实现兼容手机和平板的程序

记得我之前参与开发过一个华为的项目,要求程序可以支持好几种终端设备,其中就包括Android手机和Android Pad。然后为了节省人力,公司无节操地让Android手机和Android Pad都由我们团队开发。...

球球
2013/05/31
0
6
Android 的几种布局方式及实践

我们对Android应用程序运行原理及布局文件可谓有了比较深刻的认识和理解,并且用“Hello World!”程序来实践证明了。在继续深入Android开发之旅之前,有必要解决前两篇中没有介绍的遗留问题...

sumpower
2014/02/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Centos7安装docker和docker-compose

docker-安装 yum update yum install -y docker-engine docker-compose pip install -U docker-compose...

落叶清风
15分钟前
0
0
7个Python实战项目代码,让你感受下大神是如何起飞的!

关于Python有一句名言:不要重复造轮子。 但是问题有三个: 1、你不知道已经有哪些轮子已经造好了,哪个适合你用。有名有姓的的著名轮子就400多个,更别说没名没姓自己在制造中的轮子。 2、确...

糖宝lsh
16分钟前
0
0
【随记】Maven 与mysql 版本(maven mysql 5.1.38用的最多)

MySQL Connector/J 我的电脑mysql版本为5.7.20-log maven pom.xml 依赖可用5.1.38 pom.xml依赖代码 $加<properties>变量名的实例代码 <properties><!-- data --><mysql-connector-ja......

颖伙虫
19分钟前
0
0
观察者模式

意图: 在对象的内部状态发生变化时,自动通知外部对象进行响应。 构成 被观察者:内部状态有可能被改变,而且又需要通知外部的对象。 观察者:需要对内部状态的改变做出响应的对象。 Java实...

noob_fly
26分钟前
0
0
设计模式之 MVC

MVC 是 模块化思想或者分层思想的实践。 当我们设计一个Web应用的时候,我们的业务流是,读取数据库中的数据,进行逻辑处理,渲染到页面;如果是交互型的页面,那么页面有输入或者事件发生的...

backbye
27分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部