Rimuovere simbolo/logo dalla barra di azione su android

Ho cercato di trovare il modo di rimuovere il simbolo/logo nella barra delle azioni, ma l’unica cosa che ho trovato dopo un’ora di ricerca in MODO, Android documentazione e Google è come rimuovere la barra del titolo, in tutto. Che non è quello che voglio. Desidera rimuovere il simbolo/logo dalla barra del titolo.

Uno sa come fare? Preferibilmente mi piacerebbe fare questo in XML.

  • Si potrebbe avere appena letto l’API guida la actionbar. Si dice che proprio nella guida.
  • Ogni pezzo di informazioni è da qualche parte per essere trovato.
  • si può mostrare che cosa hai provato? quello che hai trovato in precedenza che non funziona?
  • Questa domanda è davvero non più rilevante (quasi 4 anni). Potete trovare un sacco di modi per raggiungere questo le risposte qui sotto.
InformationsquelleAutor Hrafn | 2013-01-30

 

18 Replies
  1. 57

    Se è stato definito android:logo="..." in <application> tag del vostro AndroidManifest.xml, allora avete bisogno di usare questa roba per nascondere l’icona:

    pre-v11 tema

    <item name="logo">@android:color/transparent</item>

    v11 e tema

    <item name="android:logo">@android:color/transparent</item>

    L’uso di questi due stili ha correttamente nascosto l’azione icona della barra su un 2.3 e un 4.4 dispositivo per me (questa applicazione utilizza AppCompat).

    • Questo funziona, ma nel mio caso, quando ho una visualizzazione di ricerca e fare clic su di esso/espanderlo, la mia icona di app/logo riappare. Tutte le idee?
    • hmm io so di cosa tu stia parlando, ma non ho studiato una soluzione che, mi spiace.
    • Quello che ho finito per fare è la creazione di <application (...) android:logo="@android:color/transparent"> (...) nel mio AndroidManifest.xml e costringendo useLogo per displayOptions nel mio stile come questo <item name="android:displayOptions">showHome|useLogo|homeAsUp|showTitle</item> <item name="displayOptions">showHome|useLogo|homeAsUp|showTitle</item>. Questa ultima parte è stata importante in quanto in alcuni dispositivi (penso soprattutto post-lecca-lecca) i dannati searchview preso il appIcon e metterlo al posto del logo, anche se il logo è stato trasparente :s
  2. 228

    Aggiungere il seguente codice nella barra delle azioni stili:

    <item name="android:displayOptions">showHome|homeAsUp|showTitle</item>
    <item name="displayOptions">showHome|homeAsUp|showTitle</item>
    <item name="android:icon">@android:color/transparent</item> <!-- This does the magic! -->

    PS: sto usando Actionbar Sherlock e questo funziona bene.

    • Questo “trasparente”, il trucco è un genio! Grazie!
    • Un bel trucco, grazie! Si ferma anche occupare spazio nella barra delle azioni!
    • Grazie ..è lavorato in codice… actionBar.setIcon(android.R.colore.trasparente);
    • Ottima risposta …:)
    • LOL avevo il commento! Grande e semplice risposta.
    • Alcuni dispositivi Samsung display @android:color/transparent come NERO. Sembra pazzesco, ma molti produttori di dispositivi di ignorare le impostazioni di default di Android; tra cui colori. A causa di questo, vorrei creare un colore in colors.xml come questo: <color name="transparent">#00000000</color> di riferimento e che invece di ottenere il valore da Android.
    • Chiedo solo perché entrambi android:displayOptions e displayOptions? Inoltre, non sono correlati alla soluzione, ciò che rende la “magia” è l’impostazione del colore dell’icona trasparente
    • android:displayOptions è v11 e solo, quindi è necessario essere compatibile.
    • getSupportActionBar().setIcon(android.R.colore.trasparente)
    • questo funziona per nascondere l’icona/titolo… ma attira ancora lo sfondo (che può essere nascosto con <item name=”android:background”>@android:colore trasparente/</item> ) … tuttavia, lo spazio/imbottitura è ancora presente e la mia elementi d’azione non sono giustificati a sinistra… pensieri su come risolvere ?
    • Dimensione 1 x 1 trasparente .png drawable?
    • Questo funziona, ma nel mio caso, quando ho una visualizzazione di ricerca e fare clic su di esso/espanderlo, la mia icona di app/logo riappare. Tutte le idee?
    • Questa è una soluzione migliore: <item name=”android:icona”>@null</item>

  3. 114

    Se non si desidera che l’icona in particolare attività.

    getActionBar().setIcon(
       new ColorDrawable(getResources().getColor(android.R.color.transparent)));    
    • getActionBar().setIcon(android.R.colore.trasparente); sembra essere sufficiente
    • metodo di chiamata getActionBar()…. è meglio la soluzione di questo problema (per rimuovere l’icona dalla barra delle azioni), perché se si utilizza la barra di navigazione e la barra delle azioni , in modo barra delle azioni sarà al di sopra della barra di navigazione. Se si utilizza setDisplayShowHomeEnabled(false) in modo barra di navigazione sarà più action bar e tu non vuoi questo.
    • Bello e facile,grazie!!
    • Vorrei cambiare questo: ColorDrawable cd = new ColorDrawable(getResources().getColor(android.R.color.transparent)); cd.setBounds(0,0,0,0); getActionBar().setIcon(cd); Senza impostare i limiti, l’icona trasparente usa ancora spazio
    • mostra ancora spazio vuoto a sinistra della actionbar. qualche suggerimento?
    • Bello, ha funzionato perfettamente.
    • supb. prefetto di lavoro
    • Questo funziona bene se non hai impostato un logo. Nel mio caso ho dovuto usare setLogo invece di setIcon metodo. Ancora, punta grande, mi ha messo sulla strada giusta!!
    • C’è un buon motivo perché non posso usare la getActionBar().setIcon(null); ? Sembra funzionare per me….

  4. 47

    Questo ha funzionato per me

    getActionBar().setDisplayShowHomeEnabled(false);
    • Questo mette la barra di azione sotto le linguette / barra di navigazione. A quanto pare questo comportamento è “by design” … code.google.com/p/android/issues/detail?id=36191
    • di gran lunga migliore ..grazie 🙂
    • Non è comunque questo risponde alla domanda. Sapevo di questa funzione, ma mi stavo chiedendo XML!
    • Questo sembra come dovrebbe essere la risposta, altrimenti si sta applicando una soluzione globale, che dubito che è quello che tutti vogliono. Nel mio caso, voglio mostrare il logo su alcune pagine, ma le altre pagine non ha senso e ingombra la barra di azione.
  5. 27

    Chiamata

    mActionBar.setDisplayHomeAsUpEnabled(true);

    in aggiunta,

    mActionBar.setDisplayShowHomeEnabled(false);

    nascondere il logo, ma visualizzare la Home Come icona. 🙂

    • Non è comunque questo risponde alla domanda. Sapevo di questa funzione, ma mi stavo chiedendo XML!
    • Ho pensato XML è stata privilegiata la risposta non è l’UNICA risposta. 🙁 Credo che la sua ancora di aiutare le persone. 🙂
  6. 15

    Essere a conoscenza che:

    <item name="android:icon">@android:color/transparent</item>

    Farà anche le opzioni di elementi trasparenti.

    • soluzione perfetta
  7. 12
    getActionBar().setIcon(android.R.color.transparent);

    Questo ha funzionato per me.

  8. 11
        //disable application icon from ActionBar
        getActionBar().setDisplayShowHomeEnabled(false);
    
        //disable application name from ActionBar
        getActionBar().setDisplayShowTitleEnabled(false);
    • Non è comunque questo risponde alla domanda. Sapevo di questa funzione, ma mi stavo chiedendo XML!
  9. 11

    Rimuovere o mostrare il titolo di:

    getActionBar().setDisplayShowTitleEnabled(true);

    Rimuovere o mostrare il logo di utilizzo:

    getActionBar().setDisplayUseLogoEnabled(false);

    Rimuovere tutti:

    getActionBar().setDisplayShowHomeEnabled(false);
    • Non è comunque questo risponde alla domanda. Sapevo di questa funzione, ma mi stavo chiedendo XML!
    • Questo mi ha aiutato, così grazie @Tiago!
  10. 9

    si può anche aggiungere il codice seguente nel AndroidManifest.xml.

    android:icon="@android:color/transparent"

    Funziona bene.

    Ma ho trovato che questo dà un problema come l’icona di avvio anche diventare trasparente.

    Così ho usato:

    getActionBar().setIcon(new ColorDrawable(getResources().getColor(android.R.color.transparent)));

    e ha funzionato bene.

    Ma se si hanno più di un’attività e vuoi fare l’icona su un’attività trasparente quindi il precedente approccio di lavoro.

  11. 2

    Ho usato questo e ha funzionato per me.

            getActionBar().setIcon(
            new ColorDrawable(getResources().getColor(android.R.color.transparent)));
    • Non è comunque questo risponde alla domanda. Sapevo di questa funzione, ma mi stavo chiedendo XML!
  12. 2
    getActionBar().setIcon(new ColorDrawable(getResources().getColor(android.R.color.transparent)));
    getActionBar().setDisplayHomeAsUpEnabled(true);
    • Benvenuti a Stack overflow! Di solito le risposte simili al tuo sono considerati di qualità piuttosto scarsa. Per riferimento futuro, si dovrebbe considerare l’aggiunta di alcune spiegazioni in merito il codice che hai fornito e si dovrebbe strutturare meglio il codice (aggiungere 4 spazi all’inizio di ogni riga, o selezionare tutto e fare clic su {} simbolo sopra la casella di testo.) Inoltre, si dovrebbe prestare più attenzione alla data della domanda (più di un anno fa) e il fatto che è stato già risposto (il segno di spunta verde). Buona fortuna per il vostro programmazione 🙂
    • Non è comunque questo risponde alla domanda. Sapevo di questa funzione, ma mi stavo chiedendo XML!
  13. 1

    Penso che la risposta esatta è: per api o superiore a 11:

    getActionBar().setDisplayShowHomeEnabled(false);

    altrimenti:

    getSupportActionBar().setDisplayShowHomeEnabled(false);

    (perché è bisogno di una libreria di supporto.)

    • Non è comunque questo risponde alla domanda. Sapevo di questa funzione, ma mi stavo chiedendo XML!
  14. 1

    andare il manifesto di un’trovare l’applicazione tag

      android:icon="@android:color/transparent"//simply add this on place of your icon

    …..

  15. 0

    Qiqi Abaziz la risposta è ok, ma ho lottato ancora per molto tempo a cercare di lavorare con il pacchetto di compatibilità e applicare lo stile per gli elementi corretti. Inoltre, la trasparenza-hack è superflua. Così qui è un esempio completo di lavoro per v8 e:

    values\styles.xml

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <style name="MyActivityTheme" parent="@style/Theme.AppCompat">
            <item name="actionBarStyle">@style/NoLogoActionBar</item> <!-- pre-v11-compatibility -->
            <item name="android:actionBarStyle">@style/NoLogoActionBar</item>
        </style>
        <style name="NoLogoActionBar" parent="@style/Widget.AppCompat.ActionBar">
            <item name="displayOptions">showHome</item> <!-- pre-v11-compatibility -->
            <item name="android:displayOptions">showHome</item>
        </style>
    </resources>

    AndroidManifest.xml (shell)

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android">   
        <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="19"/>
        <application android:theme="@android:style/Theme.Light.NoTitleBar">
            <activity android:theme="@style/PentActivityTheme"/>
        </application>
    </manifest>
  16. 0

    Andare nel vostro manifesto e trovare la vostra attività, quindi aggiungere questo codice:

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

    al di sopra della linea di nascondere il proprio Actionbar .

    Se avete bisogno di altre funzionalità che si possono vedere altre opzioni con il CLR (+ SPC).

  17. 0

    Il modo più veloce è quello di modificare la vostra Manifest.xml.
    Per esempio, se si desidera rimuovere il logo di attività “Attività”, e lasciare il logo in altre attività, è possibile effettuare le seguenti operazioni:

    <activity
          android:name=".home.XActivity"
          android:logo="@android:color/transparent"
          android:configChanges="orientation|keyboardHidden" />
     <activity
          android:name=".home.HomeActivity"
          android:configChanges="orientation|keyboardHidden" />
  18. 0

    Nessuno di questi ha funzionato.

    Ma questo ha fatto il trucco:

    override fun onCreate() {
        setContentView(R.layout.activity_main)
    
        setSupportActionBar(toolbar)
        toolbar.logo = null

    (rimuovere l’icona dalla barra degli strumenti)

Lascia un commento