Я просматриваю тему Holo.Light
, и я не могу найти волшебный стиль, чтобы переопределить, чтобы избавиться от текста заголовка, который на короткое время появляется, когда мое приложение запускается впервые.
Как я могу это сделать?
Пытаться:
getActionBar () setDisplayShowTitleEnabled (ложь).
Я думаю, что это правильный ответ:
<style name="AppTheme" parent="Theme.Sherlock.Light.DarkActionBar"> <item name="actionBarStyle">@style/Widget.Styled.ActionBar</item> <item name="android:actionBarStyle">@style/Widget.Styled.ActionBar</item> </style> <style name="Widget.Styled.ActionBar" parent="Widget.Sherlock.Light.ActionBar.Solid.Inverse"> <item name="android:displayOptions">showHome|useLogo</item> <item name="displayOptions">showHome|useLogo</item> </style>
Я очень новичок в Android, так что поправьте меня, если я ошибаюсь, но я думаю, что если вы решите использовать вкладки навигации на панели действий, они, похоже, не будут полностью выровнены, потому что цвет текста заголовка будет только прозрачным и hasn ' Ушел.
<style name="CustomActionBarStyle" parent="@android:style/Widget.Holo.ActionBar"> <item name="android:displayOptions">useLogo|showHome</item> </style>
Работал на меня.
Понял. Вы должны переопределить
android:actionBarStyle
А затем в вашем пользовательском стиле вы должны переопределить
android:titleTextStyle
Вот пример.
В моих theme.xml:
<style name="CustomActionBar" parent="android:style/Theme.Holo.Light"> <item name="android:actionBarStyle">@style/CustomActionBarStyle</item> </style>
И в моем styles.xml:
<style name="CustomActionBarStyle" parent="android:style/Widget.Holo.ActionBar"> <item name="android:titleTextStyle">@style/NoTitleText</item> <item name="android:subtitleTextStyle">@style/NoTitleText</item> </style> <style name="NoTitleText"> <item name="android:textSize">0sp</item> <item name="android:textColor">#00000000</item> </style>
Я не уверен, почему установка textSize на ноль не сделала этого трюка (он сжал текст, но не заставил его уйти), но настройка прозрачности textColor.
В вашем манифесте
<activity android:name=".ActivityHere" android:label="">
Вы можете изменить стиль, применяемый к каждому действию, или если вы хотите изменить поведение только для определенного действия, вы можете попробовать следующее:
setDisplayOptions(int options, int mask) --- Set selected display or setDisplayOptions(int options) --- Set display options.
Чтобы отобразить заголовок на панели действий, установите параметры отображения в onCreate ()
getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_TITLE, ActionBar.DISPLAY_SHOW_TITLE);
Чтобы скрыть заголовок на панели действий.
getSupportActionBar().setDisplayOptions(0, ActionBar.DISPLAY_SHOW_TITLE);
Подробнее здесь .
Я использую этот код в манифесте приложения
<application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:logo="@drawable/logo2" android:label="@string/title_text" android:theme="@style/Theme.Zinoostyle" >
Мой файл логотипа составляет 200 * 800 пикселей, и этот код используется в основном activity.java
getActionBar().setDisplayShowTitleEnabled(false);
Он будет работать Corectly
Напишите это заявление в
setContentView(R.layout.activity_main); getSupportActionBar().setDisplayShowTitleEnabled(false);
Использовать **getSupportActionbar()**
не **getActionBar()**
иначе он может дать
null pointer exception
Используя android:label=""
В манифесте также работает, но он также удалит имя приложения
У вас есть два варианта:
первый:
getActionBar().setDisplayShowTitleEnabled(false);
Если usign getActionBar()
вызвал исключение нулевого указателя, вы должны использовать getSupportActionBar()
второй
getSupportActionBar().setTitle("your title");
или
getSupportActionBar().setDisplayShowTitleEnabled(false); getSupportActionBar().hide();
getSupportActionBar().setDisplayShowTitleEnabled(false); getSupportActionBar().hide();
Надеюсь, это поможет
Используйте следующее:
requestWindowFeature(Window.FEATURE_NO_TITLE);
Если вы хотите сделать это только для одного действия и, возможно, даже динамически, вы также можете использовать
ActionBar actionBar = getActionBar(); actionBar.setDisplayOptions(actionBar.getDisplayOptions() ^ ActionBar.DISPLAY_SHOW_TITLE);
Единственное, что действительно сработало для меня, это добавить:
<activity android:name=".ActivityHere" android:label="" >
Хотя все они приемлемы, если ваша активность содержит только основное действие, вы можете изменить res\values\styles.xml
следующим образом:
<resources> <!-- Base application theme. --> <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="colorAccent">@color/colorAccent</item> </style> </resources>
Я обновил parent
элемент и добавил свойство .NoActionBar в тему Light из Android Studios. Create Blank Application
мастер Create Blank Application
.
На странице manifest.xml вы можете указать адрес своей метки активности. Адрес находится где-то в ваших значениях / strings.xml. То вы можете изменить значение тега в xml-файле на null.
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="title_main_activity"></string> </resources>
Я новичок в Android, поэтому, возможно, я ошибаюсь … но чтобы решить эту проблему, мы не можем просто перейти к манифесту и удалить ярлык активности
<activity android:name=".Bcft" android:screenOrientation="portrait" **android:label="" >**
Работал для меня ….
В качестве обходного пути просто добавьте эту строку, если у вас есть пользовательские действия / панели инструментов
this.setTitle("");
В вашей деятельности
ActionBar actionBar = getActionBar(); actionBar.setTitle("");