2011-01-10 27 views
0

在查看文档和一些在线示例之后,我有以下代码尝试将linearLayout的权重设置为0.7,它表示需要3个参数,但在我的代码中它会不让我:在代码中设置LinearLayout权重而不是xml问题

LinearLayout linear = new LinearLayout(this); 
linear.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); 

所以这里设置高度和宽度,但它说,在文档中的权重,它不会让我把它放在那里的最后一个参数。

回答

2

试试这个对的LayoutParams为的LinearLayout:

linear.setLayoutParams(
     new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, 
             LayoutParams.WRAP_CONTENT, 
             1) 
); 

作为证明的概念:这个作品。检查出的进口,并将其与自己的:)比较

文件:Test.java

package com.huiges.stackOverFlow.examples 

import android.app.Activity; 
import android.os.Bundle; 
import android.view.ViewGroup.LayoutParams; 
import android.widget.LinearLayout; 

public class Test extends Activity { 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     LinearLayout linear = new LinearLayout(this); 
     linear.setLayoutParams(
       new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, 
               LayoutParams.WRAP_CONTENT, 
               1) 
     ); 


    } 

} 
+0

我已经试过了,这就是我没有采取3参数的意思。日食只是想让我删除1.这就是为什么它让我感到困惑。 – SamRowley 2011-01-10 16:29:45

+0

你确定你使用的是正确的软件包吗?检查您的进口,如果neccesairy。我已经看到你的意思了,但是这个代码在我的eclipse中正在被解析。如果你愿意,我会添加一个完整的课程? – Nanne 2011-01-10 16:32:58

0

使用LinearLayout.LayoutParams

LinearLayout linear = new LinearLayout(this); 
linear.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT,1)); 
0

最后一个参数需要一个浮动。 0.7是一个双精度型,使用0.7f来代替浮点型。

linear.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, 
             LayoutParams.WRAP_CONTENT, 
             0.7f)); 
相关问题