Autore Topic: Convertire da dp a px  (Letto 4651 volte)

Offline JD

  • Amministratore
  • Utente storico
  • *****
  • Post: 1600
  • Respect: +232
    • leinardi
    • Mostra profilo
  • Dispositivo Android:
    LG Nexus 5
  • Sistema operativo:
    L'ultima Ubuntu
Convertire da dp a px
« il: 17 Maggio 2010, 16:31:02 CEST »
+2
Con questo snippet è possibile convertire da Density Independent Pixels a pixel:
Codice (Java): [Seleziona]
        float dp2px(int dip, Context context){
                float scale = context.getResources().getDisplayMetrics().density;
                return dip * scale + 0.5f;
        }

Se vi serve un numero intero di pixel potete utilizzare Math.round() per arrotondare all'intero più vicino.

Fonte: Supporting Multiple Screens | Android Developers
« Ultima modifica: 17 Maggio 2010, 22:06:08 CEST da JD »
È stata trovata una soluzione al tuo problema?
Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato ;).
E se hai aperto tu il thread marcalo come risolto cliccando !

Offline sesi

  • Nuovo arrivato
  • *
  • Post: 20
  • Respect: +1
    • Mostra profilo
Re:Convertire da dp a px
« Risposta #1 il: 20 Marzo 2012, 09:16:35 CET »
0
Ciao JD!
Ascolta, e se avessi il problema opposto? Cioè, io ho i px presi dal mio progetto grafico e voglio trasformarli in dp per settarli?
C'è una qualche funzione che mi può venire in aiuto?

Grazie!

Offline Nicola_D

  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:Convertire da dp a px
« Risposta #2 il: 20 Marzo 2012, 10:22:43 CET »
0
beh si fa la formula inversa no?
la formula di JD è:

px=dip * scale +0.5f

inverti e viene:

dip=(px-0.5f)/scale

scale è sempre: float scale = context.getResources().getDisplayMetrics().density;
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline sesi

  • Nuovo arrivato
  • *
  • Post: 20
  • Respect: +1
    • Mostra profilo
Re:Convertire da dp a px
« Risposta #3 il: 20 Marzo 2012, 10:39:52 CET »
0
provo subito! grazie :D

Offline ivanomonti

  • Nuovo arrivato
  • *
  • Post: 1
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Ace - SII - Note
  • Play Store ID:
    ivanomonti
  • Sistema operativo:
    Mac - windows8
Re:Convertire da dp a px
« Risposta #4 il: 31 Ottobre 2012, 14:35:14 CET »
0
Ciao sono nuovo e un saluto a tutti, su questo argomento vorrei costruire grafiche personalizzate, se dovessi creare un app desktop come faccio a simulare

scale, densita ecc e che calcolo dovrei fare esattamente... scusate la domanda banale.