I have main “tabHost” layout that its frame content is set on another layout “content” that contains a webview.
“Tabbar” class sets tabhost layout and “second” class sets its frame content.
Problem is when, from “Tabbar” class I try to set webview height using following code that crashes on params,
WebView webviewA = (WebView) findViewById(R.id.webviewA);
LayoutParams params = (LayoutParams) webviewA.getLayoutParams();
params.height -= 300;
Already tried to call function of webviewA from Tabbar as,
Tabbar class
second recalcula = new second();
recalcula.recalcula();
second class
public void recalcula (){
webviewA = (WebView) findViewById(R.id.webviewA);
LayoutParams params = (LayoutParams) webviewA.getLayoutParams();
params.height -= 300;
webviewA.setLayoutParams(params);
}
also crashes on params… what I am doing wrong? Thank you.
logcat error
07-06 10:14:39.893: E/AndroidRuntime(11023): FATAL EXCEPTION: main
07-06 10:14:39.893: E/AndroidRuntime(11023): java.lang.NullPointerException
07-06 10:14:39.893: E/AndroidRuntime(11023): at com.xxxxx.projecte1.second.recalcula(second.java:70)
07-06 10:14:39.893: E/AndroidRuntime(11023): at com.xxxxx.projecte1.TabBar.onReceiveAd(TabBar_iOSActivity.java:493)
07-06 10:14:39.893: E/AndroidRuntime(11023): at com.google.ads.internal.d.B(SourceFile:1116)
07-06 10:14:39.893: E/AndroidRuntime(11023): at com.google.ads.internal.c$e.run(SourceFile:187)
07-06 10:14:39.893: E/AndroidRuntime(11023): at android.os.Handler.handleCallback(Handler.java:587)
07-06 10:14:39.893: E/AndroidRuntime(11023): at android.os.Handler.dispatchMessage(Handler.java:92)
07-06 10:14:39.893: E/AndroidRuntime(11023): at android.os.Looper.loop(Looper.java:138)
07-06 10:14:39.893: E/AndroidRuntime(11023): at android.app.ActivityThread.main(ActivityThread.java:3701)
07-06 10:14:39.893: E/AndroidRuntime(11023): at java.lang.reflect.Method.invokeNative(Native Method)
07-06 10:14:39.893: E/AndroidRuntime(11023): at java.lang.reflect.Method.invoke(Method.java:507)
07-06 10:14:39.893: E/AndroidRuntime(11023): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:878)
07-06 10:14:39.893: E/AndroidRuntime(11023): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:636)
07-06 10:14:39.893: E/AndroidRuntime(11023): at dalvik.system.NativeStart.main(Native Method)
You can use reflection.
here an example;
http://aaarkonusurum.blogspot.com/2012/02/android-ile-reflection.html