66 lines
1.3 KiB
Kotlin
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
|
|
} |