Как мы можем скрыть панель заголовка при использовании панели действий?

Я использую ActionBarSherlock, и я пытаюсь скрыть строку заголовка моего приложения, но всякий раз, когда я это делаю, я получаю NullPointerException при доступе к ActionBar Как удалить / скрыть строку заголовка? Обратите внимание, что я не имею в виду название панели действий. Я имею в виду строку заголовка над панелью действий. Я запускаю свое приложение на устройстве Android 2.3.

Ниже мой код: (Мой класс расширяет SherlockFragmentActivity . SherlockFragmentActivity .)

 super.onCreate(savedInstanceState); setTheme(R.style.Theme_Sherlock); this.requestWindowFeature(Window.FEATURE_NO_TITLE); ActionBar actionbar = getSupportActionBar(); actionbar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); //I get the NullPointerException here. //... setContentView(R.layout.tab_navigation); 

Solutions Collecting From Web of "Как мы можем скрыть панель заголовка при использовании панели действий?"

Я скрываю строку заголовка, добавляя следующие строки кода:

 getSupportActionBar().setDisplayShowTitleEnabled(false); getSupportActionBar().setDisplayShowHomeEnabled(false); 

надеюсь это поможет 🙂

Чтобы скрыть всю строку заголовка и сохранить только панель действий, используя этот код:

 final ActionBar actionBar = getActionBar(); actionBar.setDisplayShowHomeEnabled(false); actionBar.setDisplayShowTitleEnabled(false); actionBar.setDisplayUseLogoEnabled(false); 

Это сработало для меня

Я искал для этого ответ. Найдено одно решение.

 actionBar = getActionBar(); actionBar.hide(); 

Вышеприведенный фрагмент удалит заголовок и ползунок. Надеюсь, поможет.

Нашел решение на этом. Если вы объявите свою тему на AndroidManifest.xml , заголовок AndroidManifest.xml сам по себе. Хотя, я не понимаю, почему он работает только при объявлении на AndroidManifest.xml а не на коде.

Причиной TitleBar NullPointerException является то, что ActionBar является синонимом TitleBar для более высоких версий (ICS и новее). Используя библиотеку совместимости и ActionBarSherlock , скрытие TitleBar также означает скрытие ActionBar .

Ниже описано, как вы можете настроить приложение для использования темы Шерлока: (вы должны добавить его в тег приложения)

 android:theme="@style/Theme.Sherlock" 

Если вы знаете, как скрыть строку заголовка кода, пожалуйста, не стесняйтесь модифицировать мой ответ, чтобы включить свой ответ. И если кто-нибудь может объяснить, почему он работает только с файлом манифеста, а не с кодом, если было бы хорошо. 🙂

См. Этот ответ, чтобы грамматически показать / скрыть titleBar из ActionBarSherlock ..

Android: заголовок bar hide

Ответ Арчи не совсем правильный. Если вы прочитали документацию Theming , вы можете найти следующее:

Темы должны быть определены в вашем манифесте для всего приложения или на основе активности. Вы также можете определить тему в коде каждого действия перед вызовом super.onCreate(Bundle) . Это необходимо сделать для каждого действия, которое вы продлеваете с одного из базовых классов активности «Шерлок» и намереваетесь использовать панель действий.

Другими словами, вам будет достаточно поменять первые две строки вашего исходного кода:

 setTheme(R.style.Theme_Sherlock); super.onCreate(savedInstanceState); ... 

У меня такая же проблема. Ни один из этих ответов не работал для меня, я все еще видел проблесковую панель заголовка, показанную непосредственно перед загрузкой Actionbar.

Мне пришлось установить тему активности в NoActionBar в манифесте:

 android:theme="@style/Theme.Sherlock.NoActionBar" 

А затем установите тему обратно в мою активность прямо перед setContentView ():

 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setTheme(R.style.Theme_Custom); setContentView(R.layout.activity_home); } 

Это все еще загрузило мою настраиваемую тему, и я больше не вижу проблесковой панели заголовка, когда активность загружается

Если вы используете Xamarin. Вы можете использовать ниже.

 ActionBar.Hide(); 

Попробуй:

 setTheme(R.style.Theme_Sherlock_NoActionBar); 
  <activity android:name=".xxxxxActivity" android:theme="@style/Theme.Sherlock.NoActionBar"/>