package Ġir . dr ax Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . res . Resources Ċ import Ġandroid . util . Display Metrics Ċ import Ġandroid . view . View Ċ Ċ /** Ċ Ġ* ĠProvides Ġutilities Ġfor Ġmetrics . Ċ Ġ* Ċ Ġ* ĠOriginal Ġat : Ċ Ġ* Ġ@ see Ġ< a Ġhref =" https :// stackoverflow . com / a / 9 5 6 3 4 3 8 / 8 8 7 7 0 7 0 "> stack Ġoverflow Ġanswer </ a > Ċ Ġ* Ċ Ġ* Ġ@ author Ġke vin Ċ Ġ*/ Ċ Ċ object ĠMetrics Util Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠThis Ġmethod Ġconverts Ġdp Ġunit Ġto Ġequivalent Ġpixels , Ġdepending Ġon Ġdevice Ġdensity . ĊĠĠĠĠ Ġ* Ġ@ param Ġdp ĠA Ġvalue Ġin Ġdp Ġ( density Ġindependent Ġpixels ) Ġunit . ĠWhich Ġwe Ġneed Ġto Ġconvert Ġinto Ġpixels ĊĠĠĠĠ Ġ* Ġ@ param Ġcontext ĠContext Ġto Ġget Ġresources Ġand Ġdevice Ġspecific Ġdisplay Ġmetrics . ĠIf Ġyou Ġdon 't Ġhave ĊĠĠĠĠ Ġ* Ġaccess Ġto ĠContext , Ġjust Ġpass Ġnull . ĊĠĠĠĠ Ġ* Ġ@ return ĠA Ġfloat Ġvalue Ġto Ġrepresent Ġpx Ġequivalent Ġto Ġdp Ġdepending Ġon Ġdevice Ġdensity ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġconvert Dp To Pixel ( dp : ĠFloat , Ġview : ĠView ?): ĠInt Ġ{ return Ġconvert Dp To Pixel ( dp , view ?. context ). toInt ()} ĊĠĠĠ Ġfun Ġconvert Dp To Pixel ( dp : ĠFloat , Ġcontext : ĠContext ?): ĠFloat Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( context Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresources Ġ= Ġcontext . resources ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmetrics Ġ= Ġresources . display Metrics ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdp Ġ* Ġ( metrics . density D pi . toFloat () Ġ/ ĠDisplay Metrics . D ENS ITY _ DEFAULT ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmetrics Ġ= ĠResources . getSystem (). display Metrics ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdp Ġ* Ġ( metrics . density D pi . toFloat () Ġ/ ĠDisplay Metrics . D ENS ITY _ DEFAULT ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠThis Ġmethod Ġconverts Ġdevice Ġspecific Ġpixels Ġto Ġdensity Ġindependent Ġpixels . ĊĠĠĠĠ Ġ* Ġ@ param Ġpx ĠA Ġvalue Ġin Ġpx Ġ( pixels ) Ġunit . ĠWhich Ġwe Ġneed Ġto Ġconvert Ġinto Ġdb ĊĠĠĠĠ Ġ* Ġ@ param Ġcontext ĠContext Ġto Ġget Ġresources Ġand Ġdevice Ġspecific Ġdisplay Ġmetrics . ĠIf Ġyou Ġdon 't Ġhave ĊĠĠĠĠ Ġ* Ġaccess Ġto ĠContext , Ġjust Ġpass Ġnull . ĊĠĠĠĠ Ġ* Ġ@ return ĠA Ġfloat Ġvalue Ġto Ġrepresent Ġdp Ġequivalent Ġto Ġpx Ġvalue ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġconvert Pixels To Dp ( px : ĠFloat , Ġcontext : ĠContext ?): ĠFloat Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( context Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresources Ġ= Ġcontext . resources ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmetrics Ġ= Ġresources . display Metrics ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpx Ġ/ Ġ( metrics . density D pi . toFloat () Ġ/ ĠDisplay Metrics . D ENS ITY _ DEFAULT ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmetrics Ġ= ĠResources . getSystem (). display Metrics ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpx Ġ/ Ġ( metrics . density D pi . toFloat () Ġ/ ĠDisplay Metrics . D ENS ITY _ DEFAULT ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }