我正在以编程方式向垂直LinearLayout添加自定义视图,我希望视图之间有一些空间。我尝试将: setPadding(0,1,0,1)添加到我的CustomView构造函数中,但似乎没有任何效果。有什么建议吗?
*有人指出,我应该使用边际。因为我是动态添加视图,所以我需要从代码(而不是xml)设置边距。我相信下面的方法可以做到这一点,但它不起作用。
public class MyView extends View
{
public MyView (Context context)
{
super(context);
MarginLayoutParams params = new MarginLayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
params.setMargins(0, 10, 0, 10);
setLayoutParams(params);
*编辑。在将视图添加到线性布局时,我还尝试使用MarginLayoutParams作为参数(如下所示)。这也不起作用:
MarginLayoutParams params = new MarginLayoutParams(linearLayout.getLayoutParams());
linearLayout.setMargins(0, 10, 0, 10);
linearLayout.addView(view, params);
发布于 2010-11-24 02:41:46
你应该照看孩子们。你应该照看孩子们。android:layout_margin<Side>
。填充是内部的。
发布于 2011-12-02 07:50:00
Android现在支持在视图之间添加Space视图。它从4.0 ICS开始可用。
发布于 2011-03-24 20:13:07
下面的示例在编程上恰好满足了您的需求。我使用了固定大小的(140,398)。
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(140, 398);
layoutParams.setMargins(24, 0, 24, 0);
layout.addView(button,layoutParams);
https://stackoverflow.com/questions/4259467
复制相似问题