Files
SmartPlateCabinet/app/src/main/java/com/sw/platecabinet/ext/CommonExt.kt
T
2025-12-26 14:05:41 +08:00

66 lines
1.3 KiB
Kotlin

package com.sw.platecabinet.ext
import android.content.res.Resources
import android.util.TypedValue
import android.view.View
import androidx.annotation.Dimension
/**
* 将 Int 值转换为 dp 值
*/
val Int.dp: Int
@Dimension(unit = Dimension.DP)
get() = TypedValue.applyDimension(
TypedValue.COMPLEX_UNIT_DIP,
this.toFloat(),
Resources.getSystem().displayMetrics
).toInt()
/**
* 将 Float 值转换为 dp 值
*/
val Float.dp: Float
@Dimension(unit = Dimension.DP)
get() = TypedValue.applyDimension(
TypedValue.COMPLEX_UNIT_DIP,
this,
Resources.getSystem().displayMetrics
)
/**
* 将 Int 值转换为 sp 值
*/
val Int.sp: Float
@Dimension(unit = Dimension.SP)
get() = TypedValue.applyDimension(
TypedValue.COMPLEX_UNIT_SP,
this.toFloat(),
Resources.getSystem().displayMetrics
)
/**
* 将 Float 值转换为 sp 值
*/
val Float.sp: Float
@Dimension(unit = Dimension.SP)
get() = TypedValue.applyDimension(
TypedValue.COMPLEX_UNIT_SP,
this,
Resources.getSystem().displayMetrics
)
fun formatNumber(num: String): String {
return num.padStart(2, '0')
}
fun View.visible() {
visibility = View.VISIBLE
}
fun View.invisible() {
visibility = View.INVISIBLE
}
fun View.gone() {
visibility = View.GONE
}