Подтвердить что ты не робот

Как удалить панель заголовка из Activity, расширяющую ActionBarActivity или AppcompatActivity с помощью темы Dialog

Мне пришлось расширить свою активность с помощью темы Theme.AppCompat.Light.Dialog из ActionBarActivity до и сейчас из AppcompatActivity, потому что моя базовая активность расширяет ее.

Но теперь с новой библиотекой appcompat v7 (v22) моя активность начала показывать строку заголовка, несмотря на то, что я использую собственный стиль с элементами windowActionBar = false, android: windowNotitle= true. Но до тех пор, пока не будет обновлена ​​библиотека appcompat, такой проблемы нет, строка заголовка не была показана.

Если моя активность расширяет FragmentActivity, все в порядке, и я понимаю, что, возможно, я использую плохой шаблон, который активирует мой диалог из AppcompatActivity, но я хотел бы знать, есть ли способ удалить строку заголовка?

4b9b3361

Ответ 1

У меня была такая же проблема, и мне нужно было сделать что-то вроде следующего для устранения (обратите внимание на использование "windowNoTitle" вместо "android: windowNoTitle" )

<style name="Theme.MyDialog" parent="@style/Theme.AppCompat.Light.Dialog">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
</style>

Ответ 2

Вы можете скрыть панель действий во время выполнения, вызвав hide(). Например:

ActionBar actionBar = getSupportActionBar();
actionBar.hide();

Ответ 3

Попробуйте

  getSupportActionBar().hide() 

если вы используете AppCompatActivity

И

 getActionBar().hide() 

если ваша деятельность расширяет ActionBarActivity. Надеюсь, что это поможет.

Ответ 4

Если вы используете библиотеку поддержки, используйте:

getSupportActionBar().setDisplayShowTitleEnabled(false);

Если нет, используйте

getActionBar().setDisplayShowTitleEnabled(false);

Ответ 5

Чтобы решить панель действий в классе, расширьте AppCompatActivity. Начну с определения новой темы, простирающейся от основной темы в файле style.xml:

style.xml

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

    <style name="AppTheme.NoActionBar">
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
    </style>

Ответ 6

В AppCompat Theme работает только одна вещь - supportRequestWindowFeature(Window.FEATURE_NO_TITLE);

Ответ 7

Добавление android:theme="@style/AppTheme.NoActionBar" в AndroidManifest.xlm делает трюк в моем случае. Решение @Brexx Galangue дало мне следующую ошибку времени выполнения:

java.lang.RuntimeException: Unable to start activity    
Caused by: java.lang.IllegalStateException: You need to use 
a Theme.AppCompat theme (or descendant) with this activity.

Ответ 8

открытый класс MainActivity расширяет AppCompatActivity {

  @Override   protected void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
             setContentView(R.layout.activity_main);
             getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
             getSupportActionBar().setCustomView(R.layout.custom_title_bar);

      }   }

Ответ 9

Попробуйте добавить этот код в свой манифест, в частности, к активности, которую вы хотите удалить из Actionbar:

android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" >

надеюсь, что это поможет: D