Android布局参数填充';没有任何影响

Android布局参数填充';没有任何影响,android,android-layout,layoutparams,Android,Android Layout,Layoutparams,我有一个问题,当我在宽度和高度=填充父项的活动上设置布局xml文件并将背景色设置为灰色时,我在启动活动时不会得到任何背景色。 我尝试创建一个扩展LinearLayout的自定义布局,当我在这个自定义布局上调用Measure时,我得到了 测量值:-2147483048 |-2147482761 其中水平空间要求:-2147483048 和垂直空间要求:-2147482761 所以,当我使用 setLayoutParams(new LayoutParams(LayoutParams.FILL_PAR

我有一个问题,当我在宽度和高度=填充父项的活动上设置布局xml文件并将背景色设置为灰色时,我在启动活动时不会得到任何背景色。 我尝试创建一个扩展LinearLayout的自定义布局,当我在这个自定义布局上调用Measure时,我得到了

测量值:-2147483048 |-2147482761

其中水平空间要求:-2147483048 和垂直空间要求:-2147482761

所以,当我使用

setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,
                LayoutParams.FILL_PARENT));
对于我的自定义布局,我什么也得不到,但是当我使用

setLayoutParams(new LayoutParams(50,
            50));
然后我得到一个矩形

我的问题是,为什么

编辑:在真实手机和模拟器上测试

编辑2: xml:

编辑3: 爪哇:

编辑4: 这个数字最多是相等的

尝试将其设置为MeasureSpec.UNSPECIFIED不会改变任何内容,调用onMeasure时视图仍不会调整大小

编辑5:
我的错。问题是TabWidget公共区域上设置了一个wrap_内容,这就是为什么我的fill_父母不工作的原因

你确定吗??您一定是在布局xml或活动中出错了

尝试使用以下布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="horizontal" 
    android:background="#FF0000">
</LinearLayout>


您应该获得红色背景

我知道您希望在运行码中插入此布局(及其设置)…为什么不尝试在该活动的.xml文件中包含相对或线性布局设置(默认情况下,参数widt和height作为匹配父项或填充父项)。在此之后,通过运行代码将linearlayout插入到.xml中的布局中

诸如此类:

myGenericLayout = (LinearLayout) findViewById(R.id.layout);
myGenericLayout.addView ( "your layout with the setting that you want here" );

请添加xml。顺便说一句,使用match_parent,因为fill_parent在API级别8时已被弃用。下票数是怎么回事???这是一个有效的问题,我厌倦了看到到处都是反对票,仅仅因为一些聪明的家伙不喜欢被问问题的方式或其他任何事情。。。这是一个很棒的社区,有时有一些非常愚蠢的成员。@Perroloco关于如何提问有一些规则)请发布onCreate()方法和xml。对于xml,我指的不是一行语法正确的xml。如果你只给出一行代码,我们该如何帮助你呢?因为除了applicationorientation的默认部分之外,我就只有这些了。在这里,请发布你的活动的oncreate方法。最好使用MATCH_PARENT而不是FILL_PARENT。我从自定义视图中也这么做,但没有帮助
onCreate:
setContentView(R.layout.some_layout);
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="horizontal" 
    android:background="#FF0000">
</LinearLayout>
myGenericLayout = (LinearLayout) findViewById(R.id.layout);
myGenericLayout.addView ( "your layout with the setting that you want here" );