Android中dp与px互相转化的工具类

前言

该工具类适配于kotlin开发,采用的扩展函数方式,使用更加简便,同时添加了不同类型的支持,后期显示相关内容的所需的工具类遇到了才会在这里逐个添加。

kotlin 复制代码
object DisplayUtils {
    private val density: Float
        get() = Resources.getSystem().displayMetrics.density

    private val scaledDensity: Float
        get() = Resources.getSystem().displayMetrics.scaledDensity

    
    // ========== px -> dp ==========
    fun Int.dp(): Int = (this / density).toInt()
    fun Float.dp(): Float = this / density

    // ========== dp -> px ==========
    fun Int.px(): Int = (this * density).toInt() //dp转
    fun Float.px(): Float = this * density

    // ========== px -> sp(文字)==========
    fun Int.sp(): Int = (this / scaledDensity).toInt()
    fun Float.sp(): Float = this / scaledDensity
}
相关推荐
xiaozongt19891 小时前
MasterGo + Claude Code 生成 Android 布局:完整实践指南
android
Anhty2 小时前
2026最新免费手机音频处理工具 !!
android·功能测试·ios·智能手机·音视频
2501_915909064 小时前
iOS应用从开发到上架App Store的完整发布流程与步骤指南
android·ios·小程序·https·uni-app·webview
狗凯之家源码网5 小时前
AI 步数修改提交系统源码应用场景与落地指南
android·数据库·人工智能·运动步数
ZHOUPUYU5 小时前
PHP 9.0 前瞻:下一代 PHP 会带来哪些新功能?
android·开发语言·php
JMchen6 小时前
性能优化——让Native代码飞起来
android·c++·性能优化
ZHOUPUYU6 小时前
PHP 8.2 的核心高级特性,包括只读类、类型系统增强
android·性能优化·php
ZHOUPUYU6 小时前
PHP 8.0 高级技术实战:从新特性到性能优化
android·性能优化·php
不爱说话郭德纲6 小时前
从“点点点”到一键出包:我把 uni-app x Android 离线打包做成了脚本
android·前端·uni-app
事圆则缓7 小时前
Android 崩溃优化与应用稳定性全解析:Crash、ANR、OOM 到线上治理
android