1

我正在尝试以这种方式在运行时调整仅包含 Linearlayout 的简单 Horizo​​ntalScrollView 的大小:

HorizontalScrollView h = (HorizontalScrollView)findViewById(R.id.scrollview_row_1);
h.setLayoutParams(new FrameLayout.LayoutParams(50,50));

但后来我得到这个错误:

E/AndroidRuntime(5098): FATAL EXCEPTION: main
E/AndroidRuntime(5098): java.lang.ClassCastException: android.widget.FrameLayout$LayoutParams

我应该如何正确调整滚动视图的大小?

4

3 回答 3

2

为了更通用,您可能只使用 ViewGroup.LayoutParams...(这样即使您将来更改了 LinearLayout,您也不必更改该代码)

于 2012-11-09T14:26:05.100 回答
1

那是因为 Horizo​​ntalScrollView 不在 FrameLayout 内。布局参数必须与 Horizo​​ntalScrollView 的根视图相匹配。

于 2012-11-09T14:06:51.767 回答
0

你试过了吗 :

HorizontalScrollView h = (HorizontalScrollView)findViewById(R.id.scrollview_row_1);
h.setLayoutParams(new HorizontalScrollView.LayoutParams(50,50));
于 2012-11-09T14:08:40.007 回答