title: Android: getSupportActionBar() always returns null in ActionBarSherlock library
body: <p>I'm trying to use the <a href="https://github.com/JakeWharton/ActionBarSherlock">ActionBarSherlock</a> library to provide backwards compatible ActionBar support with tabs in my Android app, so I downloaded the latest build, built the demo, and ran it. </p>
  
  <p>If you go to Action Bar, then select Tab Navigation it crashes every time. Here's the stack trace:</p>
  
  <pre><code>09-03 02:34:47.940: ERROR/AndroidRuntime(3078): FATAL EXCEPTION: main  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.actionbarsherlock.sample.demos/com.actionbarsherlock.sample.demos.app.ActionBarTabNavigation}: java.lang.NullPointerException  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1748)  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1764)  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): at android.app.ActivityThread.access$1500(ActivityThread.java:122)  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1002)  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): at android.os.Handler.dispatchMessage(Handler.java:99)  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): at android.os.Looper.loop(Looper.java:132)  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): at android.app.ActivityThread.main(ActivityThread.java:4025)  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): at java.lang.reflect.Method.invokeNative(Native Method)  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): at java.lang.reflect.Method.invoke(Method.java:491)  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): at dalvik.system.NativeStart.main(Native Method)  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): Caused by: java.lang.NullPointerException  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): at com.actionbarsherlock.sample.demos.app.ActionBarTabNavigation.onCreate(ActionBarTabNavigation.java:19)  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1048)  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1712)  
  09-03 02:34:47.940: ERROR/AndroidRuntime(3078): ... 11 more  
  </code></pre>
  
  <p>I can't move forward with my app until this is fixed. I wrote a bunch of code, set up the action bar in my app, and tried to run it, and it crashes with an NPE because of the null return value on the <code>getSupportActionBar()</code> call.</p>
  
  <p>The relevant code is actually in the demo for the library:</p>
  
  <pre><code>public class ActionBarTabNavigation extends FragmentActivity implements ActionBar.TabListener {
      @Override
      public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
  
          getSupportFragmentManager()
              .beginTransaction()
              .add(android.R.id.content, FragmentStackSupport.CountingFragment.newInstance(0))
              .commit();
  
          getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
          for (int i = 0; i &lt; 3; i++) {
              ActionBar.Tab tab = getSupportActionBar().newTab();
              tab.setText("Tab " + i);
              tab.setTabListener(this);
              getSupportActionBar().addTab(tab);
          }
      }
  
      @Override
      public void onTabReselected(Tab tab, FragmentTransaction ft) {
      }
  
      @Override
      public void onTabSelected(Tab tab, FragmentTransaction ft) {
          getSupportFragmentManager()
              .beginTransaction()
              .replace(android.R.id.content, FragmentStackSupport.CountingFragment.newInstance(tab.getPosition()))
              .commit();
      }
  
      @Override
      public void onTabUnselected(Tab tab, FragmentTransaction ft) {
      }
  }
  </code></pre>