Java 无法以编程方式更改webview高度
我在主布局上设置了webview,但无法通过编程方式调整其大小。Webview位于“主”布局中。 如果对他的contentainer“layoutA”执行相同的操作,虽然有效,但不是一个解决方案,我只需要设置webview。多谢各位Java 无法以编程方式更改webview高度,java,android,Java,Android,我在主布局上设置了webview,但无法通过编程方式调整其大小。Webview位于“主”布局中。 如果对他的contentainer“layoutA”执行相同的操作,虽然有效,但不是一个解决方案,我只需要设置webview。多谢各位 protected void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layo
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final RelativeLayout LayoutA = (RelativeLayout)findViewById(R.id.aLayout);
webviewA = (WebView) findViewById(R.id.webviewA);
Handler handler = new Handler();
final Runnable r = new Runnable()
{
public void run()
{
LayoutParams params = (LayoutParams) webviewA.getLayoutParams();
params.height -= 150;
}
};
handler.postDelayed(r, 1000);
logcat
07-06 11:23:21.204: E/AndroidRuntime(13795): FATAL EXCEPTION: main
07-06 11:23:21.204: E/AndroidRuntime(13795): java.lang.ClassCastException: android.widget.RelativeLayout$LayoutParams
07-06 11:23:21.204: E/AndroidRuntime(13795): at com.xxxx.projecte1.webPush$1.run(webPush.java:109)
07-06 11:23:21.204: E/AndroidRuntime(13795): at android.os.Handler.handleCallback(Handler.java:587)
07-06 11:23:21.204: E/AndroidRuntime(13795): at android.os.Handler.dispatchMessage(Handler.java:92)
07-06 11:23:21.204: E/AndroidRuntime(13795): at android.os.Looper.loop(Looper.java:138)
07-06 11:23:21.204: E/AndroidRuntime(13795): at android.app.ActivityThread.main(ActivityThread.java:3701)
07-06 11:23:21.204: E/AndroidRuntime(13795): at java.lang.reflect.Method.invokeNative(Native Method)
07-06 11:23:21.204: E/AndroidRuntime(13795): at java.lang.reflect.Method.invoke(Method.java:507)
07-06 11:23:21.204: E/AndroidRuntime(13795): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:878)
07-06 11:23:21.204: E/AndroidRuntime(13795): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:636)
07-06 11:23:21.204: E/AndroidRuntime(13795): at dalvik.system.NativeStart.main(Native Method)
在WebView上调用invalidate()。
见(图纸部分)
欢迎Flo您已经在活动类中导入了RelativeLayout.LayoutParams 试着用它来做
public void run()
{
ViewGroup.LayoutParams params = (ViewGroup.LayoutParams) webviewA.getLayoutParams();
params.height -= 150;
}
问题在于导入的软件包plz检查您案例的软件包,如果不存在,则应添加该软件包,而不是其他软件包,如导入android.widget.RelativeLayout等
import android.view.ViewGroup.LayoutParams;