以编程方式设置布局参数

时间:2012-03-10 01:06:51

标签: java android

我正在尝试在另一个滚动视图中添加滚动视图。

看起来应该是这样的:

scroll view
  linear layout
   myprogramaticscroll view
    myprogramticlinear layout
     myprogramticbutton

     end button
    end layout
   end scroll
  end linear
end scroll

我正在尝试在其中添加滚动视图。它进入那里,但我需要知道如何正确设置参数,以便我可以在滚动视图中看到我的整个按钮。我只看到它的一部分,我需要设置编程线性布局和滚动视图的宽度高度和id。我该怎么做呢?这就是我到目前为止所做的:

    //the layout I'm putting my scrollview/linearlayout/button in
    LinearLayout l = (LinearLayout) findViewById(R.id.linearLayoutFavorites);

    ScrollView scroll = new ScrollView(this);
    LinearLayout nl = new LinearLayout(this);

    ImageButton yourButton = new ImageButton(this);

    nl.addView(yourButton);
    scroll.addView(nl);

    l.addView(scroll);

2 个答案:

答案 0 :(得分:0)

你不能在另一个滚动视图中放置滚动视图,这种行为会很奇怪,Android也不知道如何处理视图上的滚动。

要设置布局参数,请查看ViewGroup.LayoutParams,实际上有很多ViewGroup.LayoutParams的子类,用于设置不同类型布局的布局参数。

答案 1 :(得分:0)

您可以在另一个Scrollview中使用Scrollview。但这不是可以暗示的。这对用户和Android操作系统都是一个问题。它会导致内存问题,并在滚动视图时触摸问题。如果您希望一次使用两个卷轴(水平和垂直),则更倾向于选择TwoDSCrollView

如果你想设置Layoutparams,你应该看看ViewGroup.LayoutParams。

如果要设置宽度和高度,则无需设置Layoutparams。您可以通过对视图使用getLayoutParams()来获取现有的参数,并将宽度和高度设置为该参数。

如果要在垂直滚动中放置垂直或在水平滚动视图中放置水平,则应将内部滚动视图高度的高度设置为总子项的实际高度。