android 项目中的屏幕适配方案

1.## smallestWidth 官方支持的限定符方案,smallestWidth插件 生成对应的屏幕下的dp 需要设置基础dp 与设计图对齐

2.手撸一套适配方案,这种就是接手的老项目,一点小修改,直接用smallestWidth 会把之前老代码搞出问题。只用于新代码 xml那种适配就不合适了

js 复制代码
/**
* 计算原理
* 比值计算 设计图比值 = 设计图宽度 / 设计图密度
* 实际px值/实际一屏的宽度px值 = 设计图标记宽度比值/设计图一屏宽度比值
* 然后根据实际px值 换算出实际 sp dp
* 设计图密度计算
* //设计图的ppi 英寸是基准计算用的与160 一样
* epicPpi = 开根号(宽平方+高平方)/ 英寸 = 每寸像素个数
* //设计图的密度
* epicDensity = epicPpi / 160
* 比值计算
* //设计图一屏宽度比值
* epicBaseWidth = 设计图的宽度 / epicDensity
* //设计图标记宽度比值
* epic = 设计图上控件的 px / epicDensity
* //实际px值
* (epic * context.resources.displayMetrics.widthPixels / epicBaseWidth).toFloat()
*/

宽度百分比,高度自适应

相关推荐
iloveAnd24 分钟前
Android开发中痛点解决(二)兼容性:AndroidX和gradle版本的兼容性
android·兼容性·androidx
stevenzqzq40 分钟前
DataStore基本使用教程
android
LawrenceMssss2 小时前
由于创建一个完整的App涉及到多个层面(如前端、后端、数据库等),并且每种语言通常有其特定的用途(如Java/Kotlin用于Android开发,Swift/Objective-C用于iOS开发,Py
android·java·ios
chen_mangoo2 小时前
HDMI简介
android·linux·驱动开发·单片机·嵌入式硬件
阿里-于怀2 小时前
AgentScope AutoContextMemory:告别 Agent 上下文焦虑
android·java·数据库·agentscope
Larry_Yanan3 小时前
Qt安卓开发(三)双摄像头内嵌布局
android·开发语言·c++·qt·ui
粲然忧生3 小时前
腾讯云终端性能监控SDK正式上线,为鸿蒙开发适配保驾护航
android·腾讯云·harmonyos
我命由我123453 小时前
Kotlin 开发 - Kotlin Lambda 表达式返回值
android·java·开发语言·java-ee·kotlin·android studio·android-studio
FrameNotWork3 小时前
Android Camera HAL实现windows摄像头显示:从黑屏到彩色照片的完整攻坚
android