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.

come viene ridimensionata un'immagine a 9 patch

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.

Esempio di angoli arrotondati con 9 patch

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:

inserisci la descrizione dell'immagine qui

Spinner di base

Lo Spinner può essere resettato secondo i tuoi requisiti di stile usando una Nove Patch.

Ad esempio, vedi questa Nove Patch:

Esempio di Patch Spinner Nine

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:

Immagine di Spinner senza Nove Patch

Usando l'immagine con i metadati di Nove Patch:

Immagine di spinner con 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.

inserisci la descrizione dell'immagine qui

L'area del contenuto dell'immagine allungata appare così:

inserisci la descrizione dell'immagine qui inserisci la descrizione dell'immagine qui inserisci la descrizione dell'immagine qui



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow