2013-10-07 13 views
10

Vorrei rimuovere il padding attorno al testo nella vista Button. Il primo screenshot è il risultato che otterrei, e il secondo è lo stato dell'arte.Rimuovi la spaziatura del testo in visualizzazione Button

enter image description here

enter image description here

Naturalmente, ho definito un disegnabile personalizzato per ottenere l'aspetto tasto. Ma anche se imposto l'attributo padding su 0dp il risultato non cambia.

Qualche suggerimento, per favore?

EDIT ecco il codice XML del pulsante

<Button 
     android:id="@+id/btnCancel" 
     style="@style/dark_header_button" 
     android:layout_width="wrap_content" 
     android:layout_marginLeft="10dp" 
     android:layout_height="wrap_content" 
     android:includeFontPadding="false" 
     android:padding="0dp" 
     android:layout_alignParentLeft="true" 
     android:layout_centerVertical="true" 
     android:text="@android:string/cancel" /> 

Ecco il file di stile xml:

<style name="dark_header_button"> 
    <item name="android:background">@drawable/bkg_dark_header_button</item> 
    <item name="android:shadowDy">-1</item> 
    <item name="android:shadowColor">#000000</item> 
    <item name="android:shadowRadius">1</item> 
    <item name="android:textSize">14sp</item> 
    <item name="android:textColor">#ffffff</item> 
</style> 

e qui è il file xml drawable:

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 

<item android:state_pressed="true"> 
    <shape> 

     <corners android:radius="10dp" /> 

     <gradient 
      android:angle="90" 
      android:endColor="#060606" 
      android:startColor="#707070" 
      android:type="linear" /> 

    </shape> 
</item> 
<item> 
    <shape> 

     <corners android:radius="10dp" /> 

     <gradient 
      android:angle="90" 
      android:endColor="#707070" 
      android:startColor="#060606" 
      android:type="linear" /> 

     <stroke 
      android:width="0.5dp" 
      android:color="#2b2b2b" /> 

    </shape> 
</item> 


</selector> 
+0

mente di condividere anche il tuo xml ....? – waqaslam

+0

"Naturalmente, ho definito un drawable personalizzato per ottenere l'aspetto del pulsante" Per favore mostraci questa definizione, se tu definisci la tua non ci dovrebbero essere padding –

+0

Hai l'attributo 'layout_height' impostato come' wrap_content'? E assicurati di avere 9 immagini patchate. – yugidroid

risposta

1

Il testo del pulsante non ha bisogno di riempimento, è di default al centro del pulsante. Penso che tu stia usando lo android:theme="@android:style/Theme.Black.NoTitleBar" nel file manifest, per favore rimuovilo e usa il tema app nativo e provalo.

+0

Grazie !! È stato impostato Theme.Holo.Light.NoActionBar per impostazione predefinita. –

+2

E se non vuoi un titolo/barra delle azioni? – Andrew

37

Non è in realtà il riempimento, ma il tema è impostare un minHeight e minWidth per i widget dei pulsanti. È possibile rimuovere completamente questo effetto senza cambiare il tema impostando le seguenti operazioni sul pulsante nel xml:

android:minHeight="0dp" 
android:minWidth="0dp" 

E quindi implica anche che si può giocare con impostazioni diverse per i diversi effetti, 0DP è semplicemente un esempio per rimuovere completamente questo effetto.

Problemi correlati