документация Toolbar
говорит
Если приложение использует изображение логотипа, оно должно решительно отказаться от названия и субтитров.
Каков правильный способ удаления заголовка?
документация Toolbar
говорит
Если приложение использует изображение логотипа, оно должно решительно отказаться от названия и субтитров.
Каков правильный способ удаления заголовка?
getSupportActionBar().setDisplayShowTitleEnabled(false);
Правильный способ скрыть/изменить заголовок панели инструментов:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(null);
Это потому, что, когда вы вызываете setSupportActionBar(toolbar);
, тогда getSupportActionBar()
будет отвечать за обработку всего на панель действий, а не на объект панели инструментов.
Смотрите здесь
Попробуйте это...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_landing_page);
.....
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar_landing_page);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
.....
}
Причиной моего ответа на этот вопрос является то, что самый ответный ответ сам по себе не помог решить мою проблему. Я выяснил эту проблему, сделав это.
<activity android:name="NAME OF YOUR ACTIVITY"
android:label="" />
Надеюсь, что это тоже поможет другим.
Другой способ удалить заголовок из вашего Toolbar
- это null
так:
Toolbar toolbar = (Toolbar) findViewById(R.id.my_awesome_toolbar);
toolbar.setTitle(null);
Если вы используете панель инструментов, попробуйте выполнить код ниже:
toolbar.setTitle("");
Вы можете использовать любой из приведенных ниже вариантов, так как оба работают одинаково:
getSupportActionBar().setDisplayShowTitleEnabled(false);
и
getSupportActionBar().setTitle(null);
Где использовать:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
Или:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(null);
Toolbar actionBar = (Toolbar)findViewById(R.id.toolbar);
actionBar.addView(view);
setSupportActionBar(actionBar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
обратите внимание на эту строку getSupportActionBar().setDisplayShowTitleEnabled(false);
этот
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
//toolbar.setNavigationIcon(R.drawable.ic_toolbar);
toolbar.setTitle("");
toolbar.setSubtitle("");
//toolbar.setLogo(R.drawable.ic_toolbar);
Я не знаю, правильно это или нет, но я изменил свой стиль так.
<style name="NoActionBarStyle" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="windowActionBar">false</item>
<item name="android:windowNoTitle">true</item>
</style>
Просто добавьте этот атрибут на панель инструментов
app:title=" "
Правильный способ скрыть заголовок/метку ToolBar следующие коды:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(null);
Никто не упомянул:
@Override
protected void onCreate(Bundle savedInstanceState) {
supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
}
toolbar.setTitle(null);
// удаляем заголовок
Toolbar toolbar = findViewById(R.id.myToolbar);
toolbar.setTitle("");
если вы используете панель инструментов по умолчанию, вы можете добавить эту строку кода
Objects.requireNonNull(getSupportActionBar()).setDisplayShowTitleEnabled(false);
Это очевидно, но выбор темы приложения в дизайне только для отображения черновика во время верстки, не имеет отношения к реальному приложению, которое просматривается в мобильном телефоне. В моем случае в дизайне нет строки заголовка, но строка заголовка находится в мобильном телефоне.
Я начинаю с программирования на Android и борюсь, чтобы найти правильное решение.
Просто изменить файл манифеста (AndroidManifest.xml
) недостаточно, потому что стиль должен быть предопределен как styles.xml
. Также бесполезно менять расположение файлов.
Все предложенные решения на Java
или Kotlin
провалились для меня. Некоторые из них ломают приложение. И если никто (как и я) не собирается использовать строку заголовка в приложении, статическое решение будет чище.
Для меня единственное решение, которое работает в 2019 году (Android Studio 3.4.1), это:
в styles.xml
(в app/res/values) добавьте строки:
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
После в AndroidManifest.xml
(в приложении/манифесты)
замещать
android:theme="@style/AppTheme">
от
android:theme="@style/AppTheme.NoActionBar">