Java 如何使所有窗口小部件在一行(行表)中可见?

Java 如何使所有窗口小部件在一行(行表)中可见?,java,android,android-layout,Java,Android,Android Layout,我已经写了下面的代码,但并没有显示按钮,因为我已经在bar LayoutParameters中设置了FILL\u PARENT。我如何在不使用XML的情况下修复它 TableRow myLayout = new TableRow (this); myLayout.setAlwaysDrawnWithCacheEnabled(true); TextView text = new TextView (this

我已经写了下面的代码,但并没有显示按钮,因为我已经在bar LayoutParameters中设置了FILL\u PARENT。我如何在不使用XML的情况下修复它

    TableRow        myLayout    = new TableRow      (this);
    myLayout.setAlwaysDrawnWithCacheEnabled(true);
    TextView        text        = new TextView      (this);
        text.setText("Test: ");
    SeekBar         bar         = new SeekBar       (this);
    ToggleButton    button      = new ToggleButton  (this);
    myLayout.addView(   text    , new TableRow.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
    myLayout.addView(   bar     , new TableRow.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT));
    myLayout.addView(   button  , new TableRow.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT));
如果为条形图设置了填充\u父项

如果不是


这两个变量都是错误的

当我需要用多个项目填充一行时,我通常使用布局权重和填充父项的宽度设置。按设置权重值的比例分布行的全宽

由于您是在代码中而不是在xml中执行此操作,因此请查看采用第三个参数的LayoutParams的构造函数。这与布局重量相对应:


尝试使用WRAP_内容和这样的权重参数

myLayout.addView(   text    , new TableRow.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT,5));
myLayout.addView(   bar     , new TableRow.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT,10));
myLayout.addView(   button  , new TableRow.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT,85));