Android: () getSupportActionBar her zaman döndürür ActionBarSherlock kütüphane null
Benim Android Uygulama sekmeleri ile geriye doğru uyumlu ActionBar destek sağlamak için ActionBarSherlock kütüphane kullanmaya çalışıyorum, en yeni, demo yapı inşa etti ve koştu indirdim.
Eğer işlem Çubuğu, ardından Gezinti Sekmesine giderseniz her seferinde çöküyor. İşte yığın izleme:
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
Bu sabit kadar ileri uygulamam ile hareket ettiremiyorum. Yazdım bir sürü kod, kurmak eylemini bar benim app, ve denedim çalıştırmak için, ve eğer kaza ile bir NPE çünkü null dönüş değeri getSupportActionBar()
Ara.
İlgili kod aslında kütüphane için bir demo
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 < 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) {
}
}
CEVAP
Android ICS 4.0.4 de aynı sorun vardı. Bu FragmentActivity requestWindowFeature(Window.FEATURE_NO_TITLE);
kullanıyordum, ama bu getSupportActionBar()
neden ICS cihazlarda ActionBar boş olması için saklanıyordu.
Sadece kaldırıldı
requestWindowFeature(Window.FEATURE_NO_TITLE);
Ve bir cazibe gibi çalıştı.
Birisi yardımcı olur umarım.
Android. Parça getActivity() bir ara n...
Neden >= yanlış zaman == null değer...
MenuİtemCompat.getActionView her zaman...
Android Kamera : veri niyet döndürür n...
Android hata: *yüklemek Başarısız oldu...