以编程方式更改布局高度,ClassCastException?

时间:2011-02-24 04:53:49

标签: android layout classcastexception

我正在尝试“动画化”WebView以下拉并显示其内容。我已经编写了一个处理程序,每次将高度增加1,但是,我遇到了ClassCastException。代码我是 使用是:

WebView.LayoutParams params = new WebView.LayoutParams(wv.getLayoutParams());
params.height = height;
wv.setLayoutParams(params);
height++;
this.sleep(20);

在wv.setLayoutParams(params)行上,我得到了一个:

  

java.lang.ClassCastException:android.widget.AbsoluteLayout $ LayoutParams

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:25)

布局参数应该是视图父级的类型。例如,如果您的WebView位于LinearLayout内,则使用LinearLayout.LayoutParams。

答案 1 :(得分:5)

使用它 -

ViewGroup.LayoutParams vc=webview.getLayoutParams();
        vc.height=700;
        vc.width=450;

        webview.setLayoutParams(vc);

它会起作用

答案 2 :(得分:0)

以下是设置活动大小的代码,我希望这将解决您的问题。就我而言,这段代码有效。

WindowManager.LayoutParams params = getWindow().getAttributes();    
       params.height = 200;
       params.width = 220;         

       this.getWindow().setAttributes(params);