package Ġpers . v ictor . ext Ċ Ċ import Ġandroid . content . res . Resources Ċ import Ġandroid . util . Typed Value Ċ import Ġandroid . util . Typed Value . COMPLEX _ UNIT _ DIP Ċ import Ġandroid . util . Typed Value . COMPLEX _ UNIT _ SP Ċ Ċ private Ġval Ġmetrics Ġ= ĠResources . getSystem (). display Metrics Ċ Ċ /** Ċ Ġ* Ġ æŃ£å¸¸ ç¼ĸçłģ ä¸Ń ä¸ĢèĪ¬ åıª ä¼ļ çĶ¨ åĪ° Ġ[ dp ]/ [ sp ] ĠåĴĮ Ġ[ px ] Ġ; Ċ Ġ* Ġ åħ¶ä¸Ń [ dp ]/ [ sp ] Ġä¼ļ æł¹æį® ç³»ç»Ł åĪĨ è¾ ¨ çİĩ å°Ĩ è¾ĵåħ¥ çļĦ dp / sp åĢ¼ è½¬æį¢ ä¸º å¯¹åºĶçļĦ px Ċ Ġ* Ġ èĢĮ [ px ] åıªæĺ¯ è¿ĶåĽŀ èĩª èº« ï¼Į çĽ® çļĦæĺ¯ è¡¨ æĺİ èĩªå·± æĺ¯ px åĢ¼ Ċ Ġ*/ Ċ val ĠFloat . dp : ĠFloat ĠĠĠĠĠ Ġ// Ġ[ xx hdpi ]( 3 6 0 Ġ-> Ġ 1 0 8 0 ) ĊĠĠĠ Ġget () Ġ= ĠTyped Value . apply Dimension ( COMPLEX _ UNIT _ DIP , Ġthis , Ġmetrics ) Ċ Ċ val ĠInt . dp : ĠInt ĠĠĠĠĠ Ġ// Ġ[ xx hdpi ]( 3 6 0 Ġ-> Ġ 1 0 8 0 ) ĊĠĠĠ Ġget () Ġ= ĠTyped Value . apply Dimension ( COMPLEX _ UNIT _ DIP , Ġthis . toFloat (), Ġmetrics ). toInt () Ċ Ċ val ĠFloat . sp : ĠFloat ĠĠĠĠĠ Ġ// Ġ[ xx hdpi ]( 3 6 0 Ġ-> Ġ 1 0 8 0 ) ĊĠĠĠ Ġget () Ġ= ĠTyped Value . apply Dimension ( COMPLEX _ UNIT _ SP , Ġthis , Ġmetrics ) Ċ Ċ val ĠInt . sp : ĠInt ĠĠĠĠĠ Ġ// Ġ[ xx hdpi ]( 3 6 0 Ġ-> Ġ 1 0 8 0 ) ĊĠĠĠ Ġget () Ġ= ĠTyped Value . apply Dimension ( COMPLEX _ UNIT _ SP , Ġthis . toFloat (), Ġmetrics ). toInt () Ċ Ċ val ĠNumber . px : ĠNumber ĠĠĠĠĠ Ġ// Ġ[ xx hdpi ]( 3 6 0 Ġ-> Ġ 3 6 0 ) ĊĠĠĠ Ġget () Ġ= Ġthis Ċ Ċ /** Ċ Ġ* Ġåľ¨ ( åı¯èĥ½ åŃĺåľ¨ çļĦ ?) æŁĲ äºĽ çī¹æ®Ĭ æĥħåĨµ ä¼ļ éľĢè¦ģ å°Ĩ px åĢ¼ è½¬æį¢ ä¸º å¯¹åºĶçļĦ dp / sp Ċ Ġ* Ġ å¯¹åºĶ æĸ¹æ³ķ [ Number . px 2 dp ]/ [ Number . px 2 sp ] Ċ Ġ*/ Ċ val ĠNumber . px 2 dp : ĠInt ĠĠĠĠĠĠ Ġ// Ġ[ xx hdpi ]( 3 6 0 Ġ-> Ġ 1 2 0 ) ĊĠĠĠ Ġget () Ġ= Ġ( this . toFloat () Ġ/ Ġmetrics . density ). toInt () Ċ Ċ val ĠNumber . px 2 sp : ĠInt ĠĠĠĠĠĠ Ġ// Ġ[ xx hdpi ]( 3 6 0 Ġ-> Ġ 1 2 0 ) ĊĠĠĠ Ġget () Ġ= Ġ( this . toFloat () Ġ/ Ġmetrics . scaled Density ). toInt ()