kotlin寫法
//直接寫在文件的根目錄下,不要定義在類內(nèi)部
fun Float.dp2Px(): Int {
val scale: Float = Resources.getSystem().displayMetrics.density
return (this * scale + 0.5f).toInt()
}
上面的寫法是Float類型的擴展方法,定義完上面的方法之后,使用方法如下:
20f.dp2Px()
或
20.5f.dp2Px()
如果你確定不需要小數(shù)類型的轉(zhuǎn)換,可以直接寫成Int的擴展
fun Int.dp2Px(): Int {
val scale: Float = Resources.getSystem().displayMetrics.density
return (this * scale + 0.5f).toInt()
}
使用方法如下:
20.dp2Px()