아래와 같은 소스를 2.2 이상에서 실행하면 문제없이 동작합니다.
하지만 2.1 이하의 폰이나 에뮬에서 실행하면 nullpointerexception이 발생합니다.
구글링을 계속 해보고 있는데 해결책을 못찾겠네요 ㅠㅠ
일단 아래 링크를 참조하면
http://stackoverflow.com/questions/2942108/why-do-i-get-a-null-pointer-exception-from-tabwidget
데이터를 로드하기전에 그려서 그렇다고 하는거 같은데..
고수님들의 도움 부탁드립니다 ㅠㅠ
-main.xml
<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<WebView
android:id="@+id/webView1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
<WebView
android:id="@+id/webView2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
<WebView
android:id="@+id/webView3"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
<WebView
android:id="@+id/webView4"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
<WebView
android:id="@+id/webView5"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
<ProgressBar
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="fill_parent"
android:layout_height="10dp"
android:max="100"
android:visibility="gone"
/>
</FrameLayout>
</TabHost>
-activity
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mTabHost = getTabHost();
mTabWidget = getTabHost().getTabWidget();
LayoutInflater inflater = LayoutInflater.from(this);
inflater.inflate(R.layout.main, mTabHost.getTabContentView(), true);
mTabHost.addTab(mTabHost.newTabSpec("tab1")
.setIndicator("tab1", getResources().getDrawable(R.drawable.image)).setContent(R.id.webView1));
mTabHost.addTab(mTabHost.newTabSpec("tab2")
.setIndicator("tab2", getResources().getDrawable(R.drawable.image)).setContent(R.id.webView2));
mTabHost.addTab(mTabHost.newTabSpec("tab3")
.setIndicator("tab3",getResources().getDrawable(R.drawable.image)).setContent(R.id.webView3));
mTabHost.addTab(mTabHost.newTabSpec("tab4")
.setIndicator("tab4",getResources().getDrawable(R.drawable.image)).setContent(R.id.webView4));
mTabHost.addTab(mTabHost.newTabSpec("tab5")
.setIndicator("tab5",getResources().getDrawable(R.drawable.image)).setContent(R.id.webView5));
mTabHost.setOnTabChangedListener(this);
mTabHost.setCurrentTab(onTabChanged("tab1", 0));
}
-log
01-16 11:32:44.574: W/dalvikvm(683): threadid=3: thread exiting with uncaught exception (group=0x4001b188)
01-16 11:32:45.345: E/AndroidRuntime(683): Uncaught handler: thread main exiting due to uncaught exception
01-16 11:32:45.454: E/AndroidRuntime(683): java.lang.NullPointerException
01-16 11:32:45.454: E/AndroidRuntime(683): at android.widget.TabWidget.dispatchDraw(TabWidget.java:206)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.ViewGroup.drawChild(ViewGroup.java:1529)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.ViewGroup.drawChild(ViewGroup.java:1529)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.ViewGroup.drawChild(ViewGroup.java:1529)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.ViewGroup.drawChild(ViewGroup.java:1529)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.ViewGroup.drawChild(ViewGroup.java:1529)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.View.draw(View.java:6538)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.widget.FrameLayout.draw(FrameLayout.java:352)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.ViewGroup.drawChild(ViewGroup.java:1531)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1258)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.View.draw(View.java:6538)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.widget.FrameLayout.draw(FrameLayout.java:352)
01-16 11:32:45.454: E/AndroidRuntime(683): at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:1830)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.ViewRoot.draw(ViewRoot.java:1349)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.ViewRoot.performTraversals(ViewRoot.java:1114)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.view.ViewRoot.handleMessage(ViewRoot.java:1633)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.os.Handler.dispatchMessage(Handler.java:99)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.os.Looper.loop(Looper.java:123)
01-16 11:32:45.454: E/AndroidRuntime(683): at android.app.ActivityThread.main(ActivityThread.java:4363)
01-16 11:32:45.454: E/AndroidRuntime(683): at java.lang.reflect.Method.invokeNative(Native Method)
01-16 11:32:45.454: E/AndroidRuntime(683): at java.lang.reflect.Method.invoke(Method.java:521)
01-16 11:32:45.454: E/AndroidRuntime(683): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
01-16 11:32:45.454: E/AndroidRuntime(683): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
01-16 11:32:45.454: E/AndroidRuntime(683): at dalvik.system.NativeStart.main(Native Method)



