Android
Immagini 9-Patch
Ricerca…
Osservazioni
Un file di immagine a 9 patch è un file appositamente formattato in modo che Android sappia quali aree / parti dell'immagine possono o non possono essere ridimensionate. Rompe la tua immagine in una griglia 3x3. Gli angoli rimangono non graduati, i lati vengono ridimensionati in una direzione e il centro viene ridimensionato in entrambe le dimensioni.
Un'immagine di Nove Patch (9-Patch) è una bitmap con un bordo di un singolo pixel attorno all'intera immagine. Ignorando i 4 pixel negli angoli dell'immagine. Questo bordo fornisce metadati per la bitmap stessa. I limiti sono contrassegnati da linee nere continue.
Un'immagine di Nove Patch è memorizzata con l'estensione .9.png
.
Il bordo superiore indica le aree che si estendono orizzontalmente. Il bordo sinistro indica le aree che si estendono verticalmente.
Il bordo inferiore indica il riempimento orizzontale. Il bordo destro indica il riempimento verticale.
I bordi di imbottitura vengono solitamente utilizzati per determinare dove deve essere disegnato il testo.
C'è un eccellente strumento fornito da Google che semplifica enormemente la creazione di questi file.
Situato nell'SDK di Android: android-sdk\tools\lib\draw9patch.jar
Angoli arrotondati di base
La chiave per lo stretching corretto è nel bordo superiore e sinistro.
Il bordo superiore controlla lo stiramento orizzontale e il bordo sinistro controlla lo stretching verticale.
Questo esempio crea angoli arrotondati adatti per un toast.
Le parti dell'immagine che si trovano sotto il bordo superiore e a destra del bordo sinistro si espandono per riempire tutto lo spazio non utilizzato.
Questo esempio si estenderà a tutte le combinazioni di dimensioni, come mostrato di seguito:
Spinner di base
Lo Spinner
può essere resettato secondo i tuoi requisiti di stile usando una Nove Patch.
Ad esempio, vedi questa Nove Patch:
Come puoi vedere, ha 3 aree estremamente piccole di stretching segnate.
Il bordo superiore è rimasto solo dell'icona contrassegnata. Ciò indica che voglio il lato sinistro (trasparenza completa) del drawable per riempire la vista Spinner
fino a quando non viene raggiunta l'icona.
Il bordo sinistro ha marcati segmenti trasparenti nella parte superiore e inferiore dell'icona contrassegnata. Ciò indica che sia la parte superiore che quella inferiore si espanderanno alla dimensione della vista Spinner
. Questo lascerà l'icona stessa centrata verticalmente.
Utilizzando l'immagine senza i metadati di Nove Patch:
Usando l'immagine con i metadati di Nove Patch:
Linee di imbottitura opzionali
Le immagini a nove pezzi consentono la definizione opzionale delle linee di imbottitura nell'immagine. Le linee di imbottitura sono le linee a destra e in basso.
Se una vista imposta l'immagine a 9 patch come sfondo, le linee di riempimento sono utilizzate per definire lo spazio per il contenuto della vista (ad esempio l'immissione di testo in un testo EditText
). Se le linee di riempimento non sono definite, vengono utilizzate le linee sinistra e superiore.
L'area del contenuto dell'immagine allungata appare così: