Hi I am trying to use tabactivity but I can't seem to make it work. I tried to extend the MainActivity to TabActivity but it seems to be deprecated.
The code I am using right now is as follows:
package jdexamples.app13_exploringtabs;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.TabHost;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.activity_main);
// tabhost
TabHost mTabHost = (TabHost) findViewById(R.id.tabHost);
mTabHost.setup();
mTabHost.addTab(mTabHost.newTabSpec("first").setIndicator("First").setContent(new Intent(this ,first.class )));
mTabHost.addTab(mTabHost.newTabSpec("second").setIndicator("Second").setContent(new Intent(this , second.class )));
mTabHost.addTab(mTabHost.newTabSpec("third").setIndicator("Third").setContent(new Intent(this, third.class)));
mTabHost.setCurrentTab(0);
}
}
Any suggestions on how to fix this ?
I tried suggestions from Android Maps within TabHost. getTabHost() return error but when I try to launch the application on the emulator, it always crashes.
The logcat is as follows:
10-16 22:09:01.375 11571-11571/? I/art﹕ Not late-enabling -Xcheck:jni (already on)
10-16 22:09:01.375 11571-11571/? I/art﹕ Late-enabling JIT
10-16 22:09:01.377 11571-11571/? I/art﹕ JIT created with code_cache_capacity=2MB compile_threshold=1000
10-16 22:09:01.537 11571-11571/jdexamples.app13_exploringtabs W/System﹕ ClassLoader referenced unknown path: /data/app/jdexamples.app13_exploringtabs-2/lib/x86
10-16 22:09:01.565 11571-11571/jdexamples.app13_exploringtabs D/AndroidRuntime﹕ Shutting down VM
10-16 22:09:01.565 11571-11571/jdexamples.app13_exploringtabs E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: jdexamples.app13_exploringtabs, PID: 11571
java.lang.RuntimeException: Unable to start activity ComponentInfo{jdexamples.app13_exploringtabs/jdexamples.app13_exploringtabs.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TabHost.setup()' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TabHost.setup()' on a null object reference
at jdexamples.app13_exploringtabs.MainActivity.onCreate(MainActivity.java:20)
at android.app.Activity.performCreate(Activity.java:6237)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
10-16 22:09:05.029 11571-11571/? I/Process﹕ Sending signal. PID: 11571 SIG: 9