如何修改ImageButton布局

时间:2014-02-07 15:48:49

标签: android android-layout

我有一个TableRow,我在其中添加了一些要显示的项目,一切顺利。然而,当我想添加一个布局修改按钮时,它似乎没有被绘制。这是代码:

ImageButton botonBorrar = new ImageButton(this);

botonBorrar.setImageResource(R.drawable.discard_light);

LinearLayout.LayoutParams buttonParams = new LinearLayout.LayoutParams(
    LinearLayout.LayoutParams.WRAP_CONTENT,
    LinearLayout.LayoutParams.MATCH_PARENT);

buttonParams.setMargins(15, 10, 10, 10);
botonBorrar.setLayoutParams(buttonParams);

myRow.addView(botonBorrar);

这里可能有什么问题?我已经关注了很多这方面的帖子,但似乎没有什么能解决我的问题。

提前致谢。

1 个答案:

答案 0 :(得分:1)

我想您应该使用TableRow.LayoutParams而不是LinearLayout.LayoutParams。

  

TableRow的子节点不需要在XML文件中指定layout_width和layout_height属性。 (http://developer.android.com/reference/android/widget/TableRow.html

因此,您可以先向视图添加按钮,然后获取已生成的layoutparams并进行修改:

myRow.addView(botonBorrar);  
TableRow.LayoutParams buttonParams = (TableRow.LayoutParams)bottonBorrar.getLayoutParams();
buttonParams.setMargins(15, 10, 10, 10);
//botonBorrar.setLayoutParams(buttonParams); - if you add button to the view, you do not have to set modified layout params explicitly.