使用少量代码行设置LayoutParams

时间:2011-09-19 12:36:55

标签: android android-layout

是否有一种简单易用的方法来设置LayoutParams?或者确切地说,MarginLayoutParams?我想将MarginRight设置为几个dp,遗憾的是我无法在LayoutFile中设置这些因为Target是ListFragment而在Code-Behind看起来非常难看。 我不是在项目的布局中这样做的原因是代码被优化和执行。

总结一下:设置Params有什么非常简单明了的方法吗?

2 个答案:

答案 0 :(得分:2)

是的,你可以这样做:

  MyImageView i2 = new MyImageView(context);

  LayoutParams lp = new LayoutParams(300, 300);
  lp.LeftMargin = 100;
  lp.TopMargin = 100;
  lp.Gravity = 0;

  this.AddView(i2, lp);

答案 1 :(得分:1)

LayoutParams lp = new LayoutParams( LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT );
lp.setMargins( left, top, right, bottom );

您可能需要将其写为LinearLayout.LayoutParams,具体取决于容器的布局类型。

然后在给定的视图/布局/小部件上调用方法setLayoutParams( lp );