首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android drawable微技巧,你所不知道的drawable的那些细节

480dpi ~ 640dpi xxxhdpi 从表可以看出,403dpi是处于320dpi到480dpi之间的,因此属于xxhdpi的范围。...那么为什么好端端的一张图片会被自动放大呢?而且这放大的比例是不是有点太过份了。其实不然,Android所做的这些缩放操作都是它严格的规定和算法的。...根据Android的开发建议,我们准备图片资源时尽量应该给每种密度的设备都准备一套,这样程序的适配性就可以达到最好。...就目前来讲,最佳放置图片资源的文件夹就是drawable-xxhdpi。那么有的朋友可能会问了,不是还有更高密度的drawable-xxxhdpi?干吗不放在这里?...好的,关于drawable微技巧方面的探索我们就讲到这里,本篇文章也是集合了不少我平时的工作经验总结,以及通过做试验所得出的一些结论,相信还是可以给大家带来不少帮助的。

2.4K80

Android神兵利器之Image Asset Studio的实现

不过其实它是用来制作Android的各种图标的, 这里的Asset是它用于制作图标的原材料。...xxxhdpi : extra extra extra (重要的事情要说三遍…) high dpi , 也就是超超超高等的屏幕密度。xxxhdpi约等于640个像素每英寸。...已经可以真机上正确运行了。之前2.1或2.2 Beta版本的Espresso Test Recorder真机上启动不起来, 只能在模拟器上启动)。 除此之外还有许多新功能的加入。...希望Android Studio成为越来越强大的Android开发IDE, 如果模拟器启动再快一些, Gradle的编译再快一些, 等等, 就更好了 (小编你就知足吧, 要什么自行车, 啊?...要什么自行车…) 到此这篇关于Android神兵利器之Image Asset Studio的实现的文章就介绍到这了,更多相关Android Image Asset Studio内容请搜索ZaLou.Cn

1.3K30
您找到你想要的搜索结果了吗?
是的
没有找到

Android系统Bitmap内存分配原理与优化

小技巧:如何查看dump文件的图片 调试时,如果我们手头只有一个dump文件,往往需要还原图片内容,以帮助定位问题。两种方式可以从dump文件里提取原图片。...通过adb shell wm density可以获取当前设备的dpi,对Nexus 6P模拟器执行后,可以读取到它的dpi是560,属于xxxhdpi。...使用图片编辑软件,将原本是350 * 350的钢铁侠图片放大至700 * 700,并分别放入xhdpi、xxxhdpi两个目录下。 为什么使用这样的组合呢?...布局里创建两个ImageView,观察这两张图片最终的显示效果,以及分配内存情况。...多图的场景(比如RecyclerView)注意及时释放图片资源; 使用占据内存更小的图片格式; 图片源文件尺寸应当与目标ImageView相近; 优先满足xxhdpixxxhdpi的图片资源需求;

1.1K20

(转载非原创)Android系统Bitmap内存分配原理与优化

小技巧:如何查看dump文件的图片 调试时,如果我们手头只有一个dump文件,往往需要还原图片内容,以帮助定位问题。两种方式可以从dump文件里提取原图片。...通过adb shell wm density可以获取当前设备的dpi,对Nexus 6P模拟器执行后,可以读取到它的dpi是560,属于xxxhdpi。...使用图片编辑软件,将原本是350 * 350的钢铁侠图片放大至700 * 700,并分别放入xhdpi、xxxhdpi两个目录下。 为什么使用这样的组合呢?...布局里创建两个ImageView,观察这两张图片最终的显示效果,以及分配内存情况。...多图的场景(比如RecyclerView)注意及时释放图片资源; 使用占据内存更小的图片格式; 图片源文件尺寸应当与目标ImageView相近; 优先满足xxhdpixxxhdpi

67220

Android 实现把bitmap图片的某一部分的颜色改成其他颜色

,即公式1dp = (dpi / 160)px 图片的规格:px*px,比如270*480像素的图片 android使用匹配机制用到dpi这个参数,无论是什么手机,不管1080分辨率还是2K分辨率,都对应着唯一的一个...现在拿到一个手机,首先计算出它的dpi,然后查下方的表,找出对应的密度,比如我的手机是1080*1920,为400dpi,则对应xxhdpiandroid系统会自动优先在drawable-xxhdpi...文件夹找对应的图片,如果找到了就加载,此时图片在手机上显示的就是它本身的大小,也就是270*480像素;如果未找到,就去更高分辨率的文件夹xxxhdpi找,一直找到最高也没有的话,就会查找drawable-nodpi...480dpi ~ 640dpi xxxhdpi 举例:将一个270*480像素的图片放入布局,宽高都是wrap_content,将该图片放入xxhdpi,可以看到显示效果就是图片宽高各占了屏幕宽高的四分之一...密度 建议尺寸 drawable-mdpi 48 * 48 drawable-hdpi 72 * 72 drawable-xhdpi 96 * 96 drawable-xxhdpi 144 * 144

83411

Android 安装包优化】Android 中使用 SVG 图片 ( Android 5.0 以下的矢量图方案 | 矢量图生成为 PNG 图片 )

的矢量图从 Android 5.0 ( API Lv 21 ) 以上的版本开始支持 , 对于 Android 5.0 以下的版本 , 两种解决方案 ; ① 将矢量图生成为 PNG 图片 ; ② 使用...build.gradle , android / defaultConfig 层级下 , 配置 generatedDensities 选项 , 之后进行项目构建时 , Gradle 会创建不同分辨率的...PNG 图片 , 这些分辨率 generatedDensities 中指定 , ['hdpi', 'mdpi', 'xhdpi', 'xxhdpi', 'xxxhdpi'] 是一个 Set 集合 ,...安装包优化】Android 中使用 SVG 图片 ( SVG 矢量图简介 | Android 中生成 Vector 矢量图资源 ) , res/drawable 资源目录下 , 生成了一张矢量图...; build.gradle 构建脚本 , 设置了 ‘hdpi’, ‘mdpi’, ‘xhdpi’, ‘xxhdpi’, ‘xxxhdpi’ 这几个分辨率 , 那么生成 APK 时 , 就会在对应上述

45010

Android图片相关

肯定心里会想,放在哪一个都行,只要是android的res目录下的drawable中就行,系统会自己找到。...大部分人都把的图片放在drawable—mdpi分辨率低于480*800时把图片放在drawable—mdpi是不会有什么影响,但是当分辨率为420*800或高于它时就会出问题了。...你的手机屏幕那么大但是他会将图片拉伸,当加载图片后让你感觉该屏幕没有实际的大小,而如果将图片放到drawable—hdpi则该问题就不会存在了。...现在还有drawable-xhdpi、drawable-xxhdpi、drawable-xxxhdpi 区别: drawable-xxxhdpi里面存放?高分辨率的图片,(1080x?)...开发程序时为了兼容不同平台不同屏幕,建议各自文件夹根据需求均存放不同版本图片。

70430

掌握Android Studio项目结构,扬帆起航

经过前面的学习,Android Studio开发环境已准备OK,运行Android应用程序的原生模拟器和Genymotion模拟器都准备妥当。...1、project模式: 展示全部文件信息,文件的位置是真实的物理结构,因此查看文件的时候建议切换到project模式。 ?...Scratch Files(草稿文件)是一个非常方便的功能,可以帮助我们快速的实验和建立原型,使用Scratch Files可以不修攺项目和创建任何文件的情况下快速画出草图, Android Studio...Android Studio的module相当于Eclipse的project,一个Project可以多个Module。 ? 4、build 工程编译目录。...6、mipmap-xxhdpi 超超高分辨率目录,当前主流手机的分辨率。 7、mipmap-xxxhdpi 超超超高分辨率目录,如平板电视。

2.5K101

Android UI设计常用尺寸及基本知识

为了简单起见,Android把屏幕密度分为了四个广义的大小:低(120dpi)、(160dpi)、高(240dpi)和超高(320dpi) 像素= DP * ( DPI / 160 ) 例如,一个240dpi...设备,为了方便原生应用的界面适配,Google按照dpi大小将它们分成了4模式(MDPI、HDPI、XHDPI和XXHDPI,现在 Android 4.3 已经XXXHDPI): 屏幕DIP类型...96 72*72 48*48 36*36 随便说一下现在安卓设计稿尺寸设定: 通常情况下PS模板的画布创建一般会以IOSiPhone5的大小来 创建,也就是...但也有以Android的 720 × 1280【xhdpi 】来创建画布,或者以 1080 x 1920 【 xxhdpi 】 的尺寸创建也有。建议一套图,有时间你出个两三套也行。...Android应该注意的是不要创建死图,应该灵活引用点九图。

2.3K31

Android的像素密度,屏幕密度,屏幕大小,分辨率,ldpi,mdpi,xhdpi,xxhdpi

Android开发为适配不同屏幕需要在资源文件添加多套图片或者多套布局文件,这篇文章讲解多套图片。 ldpi,mdpi,xhdpi,xxhdpi,xxxhdpi分别代表什么?如何使用。...此时会有一个疑问,手机的像素密度可以是任何值,Android手机只有mdpi,hdpi,ldpi,xhdpi,xxhdpi,xxxhdpi等有限的几个适配目录,Android手机如何适配呢,所以可以推测...依然查找xxhdpi,如果还没有找到xxxhdpi,还没有找到查找nodpi,如果还没有查找hdpi,然后查找mdpi,如果在xxhdpi中找到目标图片,则压缩2/3来使用(因为系统认为它找到了一个比合适尺寸大的图片...5 为什么2017年以后Android手机适配一般只需要xhdpi和xxhdpi两套资源就可以 2017年以后的android手机一般大小5寸以上,分辨率至少720p,1080p,所以对应的dpi分别为...注意:对于平板,只能电视和车载系统的开发,一般xhdpi和xxhdpi用不到,ldpi,mdpi用的比较多 6 dp 和px的转换 dp是android中用于适配的尺寸,他能保证不同尺寸密度屏幕上显示的大小相同

4.3K41

Android你可能忽略的知识点(1)-分辨率那些事

xxxhdpi Android开发我们经常看到资源文件下面有这样六个文件夹,很多人其实并不是真正的了解它们的意思,为什么会有这6个文件夹?...,毕竟xxxhdpi的每张图片都不是很小的。...那么我们和UI小姐姐要图的时候该怎么要呢?相信目前很多开发人员都会用IOS的@2X的图片,为什么可以直接用IOS的@2X图片呢?...当然我个人觉得Android自己的风格,比如Android的Material Design风格,以及Android的View,progressbar等等,如果非要为了统一那么开发人员必定会付出额外的时间去开发...四、其他 1.Manifest Manifest添加子元素 android:anyDensity=”true”时,应用程序安装在不同密度的终端上时,程序会分别加载xxhdpi、xhdpi、hdpi

66010

从0系统学Android--1.3创建你的第一个 Android 项目

1.3.1 创建 HelloWorld 项目 Android Studio 的欢迎页面点击 Start a new Android Studio project 就会自动为我们创建一个项目。...(首次开启项目,可能构建时间很长,需要下载很多东西,和你的网速有关系) 1.3.2 启动模拟器 我们还可以通过 Android Studio 来创建一个模拟器,供我们运行程序。不过建议使用真机测试。...gradlew 和 gradlew.bat 用来命令界面执行 gradle 命令的,其中 gradlew 是 Linux 或者 Mac 系统中使用的,gradlew.bat 是 Windows...Android 程序设计讲究逻辑和视图的分离。界面是不在 Activity 中直接编写的。而是布局文件编写界面。...drawable 文件夹也应该是相同的道理,我们应该自己创建多个目录:drawable-hdpi drawable-xhdpi drawable-xxhdpi drawable-xxxhdpi 图片最好分别制定多个

55120

效率提升百分之四十,AS模板也太好用了吧

Templates 不知道大家了解过一键生成 Module 的 Android Stuidio 模板,这种类型的模板我在网上没搜到相关的开源库和文章,所以我就自己研究了一段时间,去年就开源给了...但是我可以告诉大家,在你没有足够经验的情况下,最好不要这样做,因为这个文件夹包含着 Android Studio 创建 Android Module 所需要的所有文件和代码,里面比较复杂,很多判断条件...,你打算将哪个模板文件通过什么方式放到 Module 什么位置 mkdir 标签,顾名思义,就是生成一个空的文件夹 merge 标签的 from 填写模板文件的地址,to 填写 Module 的目标位置...,merge 标签会将 from 填写的模板文件,放到 to 填写的目标位置上,如果目标位置已经存在一个相同文件名的文件,则将模板文件的全部内容复制到已经存在的文件,否则则创建一个新的文件 copy...copy 标签的目标对象是普通文件,也就是没有 .ftl 后缀的文件,instantiate 标签的目标对象是模板文件,也就是 .ftl 后缀的文件,那有 .ftl 后缀的文件和没有 .ftl 后缀的文件什么区别呢

63640

浅谈 Android 屏幕适配

(太宽泛了, 现在已不建议使用) DPI(Dots Per Inch):每英寸点数,表示指屏幕密度。是测量空间点密度的单位,最初应用于打印技术,它表示每英寸能打印上的墨滴数量。...为简便起见,Android 将所有屏幕密度分组为六种通用密度 屏幕像素密度 ldpi mdpi hdpi xhdpi xxhdpi xxxhdpi 描述 低密度屏幕 中等密度 高密度屏幕 超高密度屏幕...图像分辨率一般被用于ps,用来改变图像的清晰度。 密度无关像素 (dp) 定义 UI 布局时应使用的虚拟像素单位,用于以密度无关方式表示布局维度或位置。...设计图标时,对于五种主流的像素密度(MDPI、HDPI、XHDPI、XXHDPIXXXHDPI)应按照 2:3:4:6:8 的比例进行缩放。...建议以高分辨率作为设计大小,然后按照倍数对应缩小到小分辨率的图片。 一般情况下,我们只需要提供3套切图资源就可以满足安卓工程师的适配,分别是 HDPI、XHDPI、 XXHDPI 3套切图资源。

1.3K10

Android开发 屏幕适配之像素密度适配

而屏幕适配又包括: 屏幕尺寸(small,normal,large,xlarge , 这些Android 3.2以上版本开始不建议使用,转而使用最小屏幕宽度如 sw600dp,最小宽度,最小高度等)...屏幕方向(port 竖屏,land 横屏) 屏幕像素密度(ldpi,mdpi,hdpi,xhdpi,xxhdpi,xxxhdpi) 本文主要介绍屏幕像素密度适配相关知识。...dpi 超高密度 xxhdpi – extra extra high dpi 超超高密度 xxxhdpi – – extra extra extrahigh dpi 超超超高密度 不管设备像素密度是多少...其次,不同像素密度,系统给定了其对应比例和倍数如下: 分类目录 ldpi mdpi hdpi xhdpi xxhdpi xxxhdpi 密度(dpi) ~160 ~240 ~320 ~480 ~640...新建的Android工程默认的机器人图标,不同密度目录下大小不一样,其比例和表格上的比例一致,我们准备资源图片时也要按该比例进行。 后面一行的“倍数”和比例相对应,关于它的作用后面会说明。

1.2K10

Android 加载图片占用内存分析

Android 将所有屏幕密度分为六组通用密度:ldpi( 低)、mdpi()、hdpi(高)、xhdpi(超高)、xxhdpi(超超高)和xxxhdpi(超超超高)。...Android 将所有屏幕密度分为六组通用密度:ldpi( 低)、mdpi()、hdpi(高)、xhdpi(超高)、xxhdpi(超超高)和xxxhdpi(超超超高)。...Android系统支持4种格式的像素格式,源码Bitmap.Config: 为了保证图片质量,官方默认使用ARGB_8888格式,导致图片的每个像素会占用4个Byte大小,所以demo里面的图片占用内存大小就是像素总数...(2) 所有的机器,内存占用都是这个规律 或许你有这个疑问: 为什么不同的文件夹下面,图片占据的内存资源基本一致,有的时候却发现不同文件夹下面,内存占据又是不一样的?...,Java层的bitmap创建之后,实际上像素内存的分配是native层直接调用calloc,所以其像素分配的是native heap上, 这也是为什么8.0之后的Bitmap消耗内存可以无限增长,

2.3K20

Android必知必会-App 常用图标尺寸规范汇总

https://micro.blog.csdn.net/article/details/51910874 若移动端访问不佳,请使用 –> Github版 内容持续更新,...xxx-high density screen, 640 DPI ),其图标大小为192 x 192 px 技巧:自动生成对应分辨率的 icon launcher 新增于2016-08-11 使用 Android...480 DPI 3 1 dp = 3 px xxxhdpi 640 DPI 4 1 dp = 4 px dp 到 px 这里给定:400 dp * 240 dp 则对应的图片分辨率分别为: lpdi...px * 720 px xxxhdpi ⇒ 1600 px * 960 px px 到 dp 从 px 换算成 dp 要知道它是以什么 dpi 标准来设计的,根据换算关系表可得到相应的 dp 。...例如: 以 xxhdpi 标准设计的 UI,其中一个切图的分辨率是 600 px * 360 px ,根据换算关系表可知, xxhdpi 标准下,1 dp = 3 px ,则其对应的 dp 是 200

1.2K40
领券