<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/linearLayout_parent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_horizontal"
android:orientation="vertical" >
<RelativeLayout
android:id="@+id/relativeLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent">
。。。。。
代码中需要对RelativeLayout的宽度进行设定:
RelativeLayout relativeLayout = (RelativeLayout)this.findViewById(R.id.relativeLayout1);
RelativeLayout.LayoutParams param = new RelativeLayout.LayoutParams(cell_Width, LayoutParams.MATCH_PARENT);
param.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM, 1);
relativeLayout.setLayoutParams(param);
但是报错:
04-01 23:49:13.572: E/AndroidRuntime(1246): java.lang.ClassCastException: android.widget.RelativeLayout$LayoutParams cannot be cast to android.widget.LinearLayout$LayoutParams
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.widget.LinearLayout.measureVertical(LinearLayout.java:587)
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.widget.LinearLayout.onMeasure(LinearLayout.java:519)
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.view.View.measure(View.java:10828)
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4351)
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.widget.FrameLayout.onMeasure(FrameLayout.java:267)
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.view.View.measure(View.java:10828)
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.widget.LinearLayout.measureVertical(LinearLayout.java:764)
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.widget.LinearLayout.onMeasure(LinearLayout.java:519)
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.view.View.measure(View.java:10828)
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4351)
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.widget.FrameLayout.onMeasure(FrameLayout.java:267)
04-01 23:49:13.572: E/AndroidRuntime(1246): at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:1889)
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.view.View.measure(View.java:10828)
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.view.ViewRoot.performTraversals(ViewRoot.java:938)
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.view.ViewRoot.handleMessage(ViewRoot.java:2040)
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.os.Handler.dispatchMessage(Handler.java:99)
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.os.Looper.loop(Looper.java:132)
04-01 23:49:13.572: E/AndroidRuntime(1246): at android.app.ActivityThread.main(ActivityThread.java:4123)
04-01 23:49:13.572: E/AndroidRuntime(1246): at java.lang.reflect.Method.invokeNative(Native Method)
04-01 23:49:13.572: E/AndroidRuntime(1246): at java.lang.reflect.Method.invoke(Method.java:491)
04-01 23:49:13.572: E/AndroidRuntime(1246): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)
04-01 23:49:13.572: E/AndroidRuntime(1246): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)
04-01 23:49:13.572: E/AndroidRuntime(1246): at dalvik.system.NativeStart.main(Native Method)
查了些资料,比如:http://blog.csdn.net/id19870510/article/details/6398049
说是需要设置父layout,但是试了后依然报错,请问到底如何更改?
谢谢
相关推荐
在代码示例中,我们首先创建了一个`RelativeLayout`对象,并设置了其大小。然后,我们分别创建了两个按钮,为它们设置相应的参数,这些参数指定了它们在相对布局中的位置。最后,将这两个按钮添加到相对布局中,并...
最常见的错误做法是直接创建一个新的`RelativeLayout.LayoutParams`实例并赋值给布局,如以下代码所示: ```java RelativeLayout ss = (RelativeLayout) findViewById(R.id.myRelativeLayout); ss.setLayoutParams...
本教程将详细介绍如何通过代码来实现ListView表格动态设置控件宽度。 首先,我们需要理解ListView的基本结构。ListView是由多个ListView项(ListView Item)组成的,每个项通常对应一个View或者一个自定义的...
在上面的代码中,我们使用了`ConstraintLayout`作为容器,但也可以选择其他视图。`app:customBackground`和`app:cornerRadius`是自定义属性,用于设置背景图片和圆角半径。`your_image`应替换为实际图片资源的引用。...
3. **设置高度和宽度**:通过`RelativeLayout.LayoutParams`对象设置`ImageView`的高度和宽度。这里设置的高度为600像素,宽度为800像素。 4. **应用参数**:最后,通过调用`setLayoutParams()`方法将设置好的参数...
例如,如果你想让一个按钮始终位于另一个按钮的正下方,并且两者的宽度相等,你可以同时设置`android:layout_below`和`android:layout_width`为`match_parent`。 ##### 基于父容器的定位 1. **`android:layout_...
RelativeLayout的这种特性使得它可以创建复杂的、动态响应的用户界面,而无需过多的代码。 现在,让我们看看"MyInfo2"实例。在这个例子中,可能是一个个人信息编辑界面,可能会包含头像、用户名、电子邮件和电话...
本篇文章将重点讲解如何通过XML布局文件来实现ListView表格控件宽度的动态设置。 首先,我们需要理解ListView的工作原理。ListView通过Adapter来填充数据,并且每个条目(Item)都是一个单独的View或ViewGroup,...
Android 中的 RelativeLayout 代码实现相对布局 Android 中的 RelativeLayout 是一种基于相对位置的布局方式,它可以让开发者更方便地实现复杂的界面布局。相比于 AbsoluteLayout,RelativeLayout 提供了更加灵活和...
Android 开发入门 对 RelativeLayout的基本属性的讲解和用法 ,更容易的帮你理解和使用
在Android应用开发中,`RelativeLayout`是Android布局体系中非常重要的一种布局方式,它以其灵活性和强大的定位能力受到开发者们的喜爱,特别是在游戏开发、相机应用以及增强现实(AR)项目中,`RelativeLayout`更是...
### RelativeLayout相对布局属性详解 在Android开发中,`RelativeLayout`是一种非常常见的布局方式,它允许开发者根据父容器或兄弟视图来定义子视图的位置。本文将详细介绍`RelativeLayout`的各种属性及其使用方法...
在Android开发中,`RelativeLayout`是一种常用的布局管理器,它允许开发者通过相对位置来安排UI组件,而不是基于绝对坐标。这种布局方式对于创建复杂且适应性强的用户界面非常有用。本篇文章将深入探讨如何在运行时...
项目中的`RelativeLayoutDemo`可能包含了一个XML布局文件,展示了如何使用`RelativeLayout`的属性来设置视图的位置。例如,可能有一个TextView在顶部,一个Button在底部,而一个ImageView居中,并且Button位于...
在"3.10"这个文件中,可能包含了关于LinearLayout与RelativeLayout混用的示例代码或教程,建议进一步查看以加深理解。在学习和实践过程中,不断尝试和优化布局设计,将有助于提升Android开发技能。
为了在代码中应用这些效果,你需要在`RelativeLayout`的XML布局文件中设置背景资源,例如: ```xml <RelativeLayout android:id="@+id/relative_layout" android:layout_width="match_parent" android:layout_...
"Android-DragView可拖拽的view继承自RelativeLayout"是一个专为实现拖拽功能而设计的自定义视图类,它扩展了Android原生的RelativeLayout,使得用户可以自由地在屏幕上拖动视图元素。这一特性在许多应用中都有广泛...
这个"Android应用源码之12.RelativeLayout.zip"压缩包很可能是为了教学或研究目的,提供了一个使用RelativeLayout布局的实例代码。让我们深入探讨一下RelativeLayout及其在Android应用中的使用。 RelativeLayout是...
RelativeLayout 上 下 中 左 右布局 demo
- **`android:layout_centerInParent`**:当设置为true时,视图将同时在水平和垂直方向上居中于其父容器内,提供了一个简洁的方式来居中任何元素。 ### 4. 边距调整 - **`android:layout_marginTop`**、**`android...