Die Dokumentation von Toolbar
sagt
Wenn eine App ein Logo verwendet, sollten Sie unbedingt einen Titel und einen Untertitel auslassen.
Was ist der richtige Weg, um den Titel zu entfernen?
getSupportActionBar().setDisplayShowTitleEnabled(false);
Der richtige Weg, um den Toolbar-Titel auszublenden/zu ändern, ist:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(null);
Dies liegt daran, dass, wenn Sie setSupportActionBar(toolbar);
aufrufen, die getSupportActionBar()
für die Verarbeitung der gesamten Aktionsleiste und nicht des Symbolleistenobjekts verantwortlich ist.
Siehe hier
Versuche dies...
@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);
.....
}
Der Grund für meine Antwort zu diesem Thema ist, dass die am häufigsten vorgelegte Antwort mein Problem nicht gelöst hat. Ich habe dieses Problem dadurch herausgefunden.
<activity Android:name="NAME OF YOUR ACTIVITY"
Android:label="" />
Hoffe, das wird auch anderen helfen.
Eine andere Möglichkeit, den Titel von Ihrer Toolbar
zu entfernen, besteht darin, null
wie folgt auszugeben:
Toolbar toolbar = (Toolbar) findViewById(R.id.my_awesome_toolbar);
toolbar.setTitle(null);
Wenn Sie die Toolbar verwenden, versuchen Sie es mit dem folgenden Code:
toolbar.setTitle("");
Toolbar actionBar = (Toolbar)findViewById(R.id.toolbar);
actionBar.addView(view);
setSupportActionBar(actionBar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
beachten Sie diese Zeile getSupportActionBar().setDisplayShowTitleEnabled(false);
Sie können einen der folgenden Befehle verwenden, da beide gleich funktionieren:getSupportActionBar().setDisplayShowTitleEnabled(false);
undgetSupportActionBar().setTitle(null);
Wo zu verwenden:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
Oder :
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(null);
diese
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);
Ich weiß nicht, ob dies der richtige Weg ist oder nicht, aber ich habe meinen Stil so geändert.
<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>
Der richtige Weg, um Titel/Beschriftung von Toolbar Die folgenden Codes auszublenden:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(null);
Toolbar toolbar = findViewById(R.id.myToolbar);
toolbar.setTitle("");
Es ist offensichtlich, aber die App Theme
-Auswahl im Design dient nur der Anzeige eines Entwurfs während der Layout-Edition und ist nicht mit der tatsächlichen App im Handy verwandt. In meinem Fall gibt es keine Titelleiste im Design, aber die Titelleiste befand sich immer im Handy.
Ich beginne mit der Android-Programmierung und kämpfe um die richtige Lösung.
Nur die Manifestdatei (AndroidManifest.xml
) zu ändern, reicht nicht aus, da der vordefinierte Stil styles.xml
ist. Auch ist es sinnlos die Layoutdateien zu ändern.
Alle Lösungsvorschläge für Java
oder Kotlin
sind für mich fehlgeschlagen. Einige von ihnen stürzen die App ab. Und wenn man (wie ich) nie vorhat, die Titelleiste in einer App zu verwenden, ist die statische Lösung sauberer.
Für mich ist die einzige Lösung, die 2019 (Android Studio 3.4.1) funktioniert:
in styles.xml
(unter app/res/values) füge die Zeilen hinzu:
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
Nach in AndroidManifest.xml
(unter App/Manifeste)
Ersetzen
Android:theme="@style/AppTheme">
durch
Android:theme="@style/AppTheme.NoActionBar">
Niemand hat erwähnt:
@Override
protected void onCreate(Bundle savedInstanceState) {
supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
}
toolbar.setTitle(null);
// den Titel entfernen
Fügen Sie dieses Attribut einfach Ihrer Symbolleiste hinzu
app:title=" "
wenn Sie die Standardsymbolleiste .__ verwenden, können Sie diese Zeile hinzufügen
Objects.requireNonNull (getSupportActionBar ()). SetDisplayShowTitleEnabled (false);