Selettore ridimensionato disegnato
-
20-12-2019 - |
Domanda
Ho un dragaggio usato in un selettore.L'immagine / stibile è una stella e il selettore viene utilizzato da una casella di controllo e dovrebbe rappresentare un pulsante preferito.
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="false" android:drawable="@drawable/star" />
<item android:state_checked="true" android:drawable="@drawable/star_faved" />
</selector>
.
Le immagini sono 256x256px Big e DonT Scala se utilizzate con la casella di controllo.Ho provato a usarlo come 9 patch, ma non riuscivo a farlo funzionare.
<CheckBox android:layout_width="20dp"
android:layout_height="20dp"
android:text="read"
android:button="@drawable/favorite_checkbox"
android:focusable="false"/>
.
Qual è il modo standard per affrontare questo?
Soluzione
256x256 px sembra abbastanza grande da essere una risorsa XXXHDPI.
Quindi, immagino di averlo fatto a 640 dpi.
A 9 Patch non aiuterà in questo caso, poiché allungherà la grafica.
Assicurati di avere almeno la risorsa XXXHDPI nella risoluzione XXXHDPI (normalizzata) di 640 DPI
I used the icon from iconmonstr.com
... Le immagini dei siti Icon vengono eseguite a bassa qualità (abbastanza buono per PC) di 72 DPI (solitamente / A volte 96 DPI - molto raramente, qualità migliore).
Immagina che il DPI Android più basso (per uno schermo LDPI) sia 120 DPI, quasi il doppio ...
Se vuoi la qualità, il DPI da usare è:
- .
- 120 per LDPI, Bilancia Factor= 0.75
- 160 per MDPI, Bilancia Factor= 1.0
- 240 per HDPI, Bilancia Factor= 1.5
- 320 per XHDPI, Bilancia Factor= 2.0
- 480 per XXHDPI, Bilancia Factor= 3.0
- 640 per XXXHDPI, Fattore di scala= 4.0
Normalmente, il ridimensionamento funzionerà quasi perfettamente.
Quindi, avere un XXXHDPI o una risorsa XHDPI sarebbe ben ridimensionata.
Ora, devi migliorare la qualità.
72DPI=> 640DPI - Ma lascia la stessa dimensione (portalo a 640 dpi, ridimensiona automaticamente alle dimensioni maggiori, quindi riduci la dimensione a 256 * 256, lasciando nuovamente il DPI impostato su 640).
Salva queste immagini nella cartella /res/drawable-xxxhdpi
[modifica]
Le dimensioni corrette delle immagini per una casella di controllo devono essere 48 * 4 ( 192 ) PX come Asset completo (che significa l'immagine + una certa imbottitura, 16px per lato, trasparente) e 40 * 4 ( 160 ) PX come la grafica stessa (il quadrato "ottico"), per una risoluzione XXXHDPI.
[Modifica 2]
48 , a MDPI Risoluzione ( 160 DPI , Fattore di scala= 1.0 )
4.0 Essere il fattore di scala per la risoluzione XXXHDPI
Poiché le immagini diventano grandi (in peso), ti consiglio di utilizzare Optipng , per ridurre il complesso Conteggio dei byte senza perdere qualità.