2011-11-13 48 views
0

的设定保证金我有下面的代码,它试图设置margin:通过tablerow问题

TableRow tr = new TableRow(this); 
        TableLayout.LayoutParams tableRowParams= 
          new TableLayout.LayoutParams 
          (TableLayout.LayoutParams.FILL_PARENT,TableLayout.LayoutParams.WRAP_CONTENT); 

          int leftMargin=20; 
          int topMargin=50; 
          int rightMargin=0; 
          int bottomMargin=50; 

         tableRowParams.setMargins(leftMargin, topMargin, rightMargin, bottomMargin); 
         tr.setLayoutParams(tableRowParams); 

TextView name = new TextView(this); 
          name.setText(Html.fromHtml(venues.get(j).name + "<br><br>" + venues.get(j).getFullAddress())); 

然而,这并不设定的保证金。我在这里做错了什么?

回答

1

编辑。糟糕,我的糟糕,TableLayout.LayoutParams没问题。在TableRow的子级上使用TableRow.LayoutParams。

我只是跑这个代码(这是,在大多数情况下,你的代码)和利润率套正确

TableRow tr = new TableRow(this); 
TableLayout.LayoutParams tableRowParams= 
    new TableLayout.LayoutParams 
    (TableLayout.LayoutParams.FILL_PARENT,TableLayout.LayoutParams.WRAP_CONTENT); 

    int leftMargin=100; 
    int topMargin=50; 
    int rightMargin=0; 
    int bottomMargin=50; 

    tableRowParams.setMargins(leftMargin, topMargin, rightMargin, bottomMargin); 
     tr.setLayoutParams(tableRowParams); 

    TextView tv = new TextView(this); 
    tv.setText("EXAMPLE ROW"); 
    TableRow.LayoutParams textParams = new TableRow.LayoutParams(TableRow.LayoutParams.WRAP_CONTENT, 
      TableRow.LayoutParams.WRAP_CONTENT); 
    tv.setLayoutParams(textParams); 
    tr.addView(tv); 

    tlayout.addView(tr); 
+0

这并没有工作,以及 – adit

-1

是不是像这样?

TableRow tr = new TableRow(Activity.this) 

而且我也希望你也能在那一排上放一张桌子。

为什么不去XML?

<TableRow 
android:id="@+id/tr1" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content"> 
</TableRow> 
+0

,因为它是通过代码 – adit

+0

动态创建您可以抬高该行布局。例如 – PacQ