android 我来告诉你图片应该放在那个文件夹下
文章目录
- 为什么写这个博客
- 一,熟悉 px dpi dp 等单位的含义
- 二.android 的drawable 和 mipmap文件夹该怎么用
为什么写这个博客
不知道在哪里瞅了一眼,android官方说res下的mipmap文件夹是用来放图标的,drawbale是用来放项目中资源图片的,我之前好像都放错了,把资源图片都放在mipmap中了,而且我随便找了一个图片(测试,自己随便瞎搞),不知道应该放在那个包下了,所以想总结一下并解决以上问题
一,熟悉 px dpi dp 等单位的含义
px:像素单位,常常说的手机像素1080x1920的单位就是像素,一个像素点就是1px,我们常说的某个手机是1080x1920的像素指的是屏幕的宽排列着1080个像素点,高排列着1920个像素点,那相同长度的手机,排列的像素点越多肯定表现出来的画面越细腻.
dpi:这是一个密度单位,指的是每英寸屏幕内有多少个像素点,这个值也是评判手机展示程度的一个重要单位.例如一个手机的dpi为400,那么就表示这个手机1英寸屏幕内有400个像素点
dp:dp是一个我们android开发中常用的长度单位,dp会根据不同的dpi和px来决定dp真实的长度,有一个公式
px = dp * (dpi / 160)
dp = px/(dpi / 160)
所以当dpi为160的时候,1dp就等于1px,所以dpi越大,dp的真实长度约短,以达到适配的目的,我们根据实际情况思考一下为什么应该是这样.例如下图,一个手机dpi是1,一英寸屏幕里只有一个像素点(px),二手机dpi是2,一英寸屏幕里只有两个像素点(px),那他们要绘制一个2px的图片,一手机需要两英寸,而二手机只需要一英寸,如果两个手机屏幕一样大,那就会出现特别大的差异,
那么使用dp为单位会好些,
px = dp*(dpi / 160) 他会获取当前屏幕的dpi的值,如果一手机的dpi为160 二手机的dpi为320,那么一手机表示一个1dp的需要1个像素点,二手机表示1dp的需要两个像素点,因为一手机一个像素点的大小和二手机两个像素点的大小一样大,所以展示出来的大小也一样大,(自己理解的,也不知道对不对哈哈哈哈哈哈嗝)
二.android 的drawable 和 mipmap文件夹该怎么用
mipmap只用来放图标
不过为了适配各个版本的系统,一般使用Image Asset Studio生成生成.
drawable 文件夹
drawbale里放资源图片,那对于ui给的一倍图,二倍图到底怎么放,ui一般以320x640为标准原型,给出的一倍图,二倍图,三倍图根据dp和px的关系一直存放即可,那有位老哥提问了,我ui以1080x1920切的图,那该怎么放?
这个跟多大的分辨率没关系,那他给你的只要的一倍图,就放在mdpi里就行了,是因为这里1dp=1px ,1dp就可以表示原大小,你的整体效果都是根据1080x1920走的,所以要大都大,要小都小.
android 我来告诉你图片应该放在那个文件夹下相关推荐
- android pad上图片放在drawable文件夹下不正确的显示的讨巧的解决方法
最近接了个外包,是做那种饭店的点菜系统,但是不是在手机上或者pad上,而且运行在他们的点菜设备上,当时为了做适配,周末还过去调界面,它说设备是800*480的,那我就在res/values下建了一个v ...
- webpack5打包图片并放到指定文件夹下
webpack5打包图片并放到指定文件夹下 module: {rules: [{test: /\.(jpg|png|gif)$/,type: 'asset/resource',generator: { ...
- Android开发系列(十七):读取assets文件夹下的数据库文件
在做Android应用的时候,不可避免要用到数据库.可是当我们把应用的apk部署到真机上的时候,已经创建好的数据库及其里边的数据是不能随着apk一起安装到真机上的. (PS:这篇博客攻克了我前面博客中 ...
- 服务器系统c盘在哪个文件夹,windows操作系统放在哪个文件夹下
2010-05-22 回答 windows文件夹下的文件名解释 一.文件夹篇 all users 这里记录的是window的用户以及这些用户个人设定的开始菜单及桌面等信息. command 在这个目录 ...
- python按照图片命名顺序读取文件夹下的图片
假设我们要读取的文件夹下的图片命名如下: 现在需要按照图片的命名顺序逐个读取图片(即按照frame1.jpg,frame2.jpg,frame3.jpg,frame4.jpg,frame5.jpg顺序 ...
- linux web放在哪个文件夹下,Linux中的Web应用程序应该放在哪里?
以下是Linux发行版的文件结构示例: https://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-filesystem-fhs.html ...
- VisualStudio代码放在不同文件夹下进行管理,设置包含目录
使用VisualStudio进行算法仿真时如果将.h和.c或.cpp文件.以及使用的数据文件都放在同一个目录下则会显得非常乱, 下面进行代码的文件管理设置 第一步,创建inc和src文件夹,并将.h文 ...
- js将图片上传服务器文件夹下,Egg.js 实现向服务器上传图片
1.安装时间处理 及 压缩 模块 yarn add silly-datetime pump 2.文件保存路径 config/config.default.js config.uploadDir = ' ...
- python将一个文件夹下图片到另外一个文件夹下
使用的是python的一个模块shutil.开始想用os.system(),但是好像不行 import shutilshutil.move('image/1.jpg','image1') 还有其他关于 ...
最新文章
- hdu-4302-Holedox Eating-线段树-单点更新,有策略的单点查询
- iptables小案例,nat表应用
- The Elements of Statistical Learning的笔记
- 3、使用Oracle Logminer同步Demo
- mongodb中批量将时间戳转变通用日期格式
- java主类与源代码名称_Java高级编程基础:类文件结构解析,看穿Class代码背后的秘密...
- linux之cut命令使用和总结
- Deep Learning for Brain MRI Segmentation: State of the Art and Future Directions
- 通用计算机和嵌入式专用计算机例子,什么是嵌入式技术?
- 关于Java的File.separator
- PyTorch中“CUDA out of memory”的调试笔记
- JUC 常用 4 大并发工具类:CountDownLatch、CyclicBarrier、Semaphore、Exchanger
- Wireshark实战分析之TCP协议(一)
- js小游戏---扫雷
- 可访问性之于类和对象
- 香港 三星 android6.0,【极光ROM】-【三星S20(国行/港版/台版/韩版/美版) G981X-高通865】-【V6.0 Android-Q-TJA】...
- 高中开计算机课吗,高中信息技术课的开设意义和课程实施方法
- IAR for MSP430 7.12.1下载
- 打开Java控制面板
- 安卓 获取机身内存,可用内存;运行内存,剩余内