Android ImageView缩放类型与可绘制文件夹
我认为不同的可绘制文件夹(例如,Android ImageView缩放类型与可绘制文件夹,android,image,drawable,scaling,image-scaling,Android,Image,Drawable,Scaling,Image Scaling,我认为不同的可绘制文件夹(例如,可绘制xhdpi,可绘制hdpi)的目的是为了避免不必要的重新校准以节省资源 但是,如果我想将图像放入ImageView,我必须选择适当的缩放类型才能正确显示图像 根据文件: 居中 显示视图中居中的图像,不进行缩放 中心作物 缩放图像,使x和y维度都更大 大于或等于视图,同时保持图像纵横比; 裁剪图像中超出视图大小的任何部分;中心 视图中的图像 中心内 缩放图像以适合视图内部,同时保持图像 纵横比。如果图像已经小于视图,则 与中心相同 健身中心 缩放图像以适合视图
可绘制xhdpi
,可绘制hdpi
)的目的是为了避免不必要的重新校准以节省资源
但是,如果我想将图像放入ImageView
,我必须选择适当的缩放类型才能正确显示图像
根据文件:
居中
显示视图中居中的图像,不进行缩放
中心作物
缩放图像,使x和y维度都更大
大于或等于视图,同时保持图像纵横比;
裁剪图像中超出视图大小的任何部分;中心
视图中的图像
中心内
缩放图像以适合视图内部,同时保持图像
纵横比。如果图像已经小于视图,则
与中心相同
健身中心
缩放图像以适合视图内部,同时保持图像
纵横比。至少有一个轴与视图完全匹配,并且
结果在视图中居中
fitStart
与fitCenter相同,但与视图的左上角对齐
菲登德
与fitCenter相同,但与视图的右下角对齐
菲特西
缩放x和y尺寸以精确匹配视图大小;不
保持图像的纵横比
如您所见,除居中
外的所有缩放类型重新缩放图像
我的第一个问题:
如果图像视图重新缩放图像,为什么要提供这么多不同的分辨率
我的第二个问题:
我可以对任何图像使用drawable nodpi
文件夹,然后使用类似fitCenter
的缩放类型,以便图像始终具有正确的大小。为什么我应该使用除drawable Nodepi
之外的任何文件夹?不同的资源文件夹主要用于图标,因为在大多数情况下,缩放会导致模糊,并允许帮助解决下一个问题:
使用比例因子(如1,5)缩放图标后,图标可能会
看起来很模糊
它允许您为低分辨率设备使用简单图像(细节较少)。您可以在图标72x72上绘制比24x24多得多的内容
此外,提供不同分辨率的图像还允许您设置
具有wrap_内容大小的ImageView,不计算精确的
大小以dps为单位
我几乎所有的内容都使用xx hdpi文件夹的高分辨率资源,android将自动为ldpi、hdpi、mdpi等扩展它。例如,当您在hdpi设备上使用xx hdpi文件夹中的图标时,它将缩小两倍。您可以在此处找到更多信息:
我只对图标使用不同分辨率的文件夹 不同的资源文件夹主要用于图标,因为在大多数情况下,缩放会导致模糊,并允许帮助解决下一个问题:
使用比例因子(如1,5)缩放图标后,图标可能会
看起来很模糊
它允许您为低分辨率设备使用简单图像(细节较少)。您可以在图标72x72上绘制比24x24多得多的内容
此外,提供不同分辨率的图像还允许您设置
具有wrap_内容大小的ImageView,不计算精确的
大小以dps为单位
我几乎所有的内容都使用xx hdpi文件夹的高分辨率资源,android将自动为ldpi、hdpi、mdpi等扩展它。例如,当您在hdpi设备上使用xx hdpi文件夹中的图标时,它将缩小两倍。您可以在此处找到更多信息:
我只对图标使用不同分辨率的文件夹 这是屏幕密度或dpi(每英寸点数)的问题;它是屏幕上某个区域内的像素数
一般来说,如果你是初学者,你可以扔掉这些文件夹,只使用一个(drawable
),没问题,但最好正确使用不同的drawable
和mipmap
文件夹,以便制作一个高质量的Android应用程序,在不同屏幕大小的设备上看起来很棒
现在总结一下,ImageView.ScaleType只设置资源的边界以适应视图的边界,而使用不同的可绘制的
文件夹允许Android为我们的设备选择具有最佳密度的近距离资源,从而为我们的应用程序带来更好的外观
在这本书和这本书中阅读更多关于这个主题的内容。这是屏幕密度或dpi(每英寸点数)的问题;它是屏幕上某个区域内的像素数
一般来说,如果你是初学者,你可以扔掉这些文件夹,只使用一个(drawable
),没问题,但最好正确使用不同的drawable
和mipmap
文件夹,以便制作一个高质量的Android应用程序,在不同屏幕大小的设备上看起来很棒
现在总结一下,ImageView.ScaleType只设置资源的边界以适应视图的边界,而使用不同的可绘制的
文件夹允许Android为我们的设备选择具有最佳密度的近距离资源,从而为我们的应用程序带来更好的外观
请在“此”和“此”中阅读有关此主题的更多信息。如果不提供任何scaleMode,图像将被裁剪。试着把你的图像放到可绘制的nodpi
中,看看在不同的屏幕密度下会发生什么。“裁剪”到底是什么意思?它与“中心裁剪”缩放模式类似吗?缩放是因为屏幕大小不同而发生的。多个可绘制文件夹用于不同的屏幕分辨率。“裁剪”表示剪切。而且没有居中。从左上角开始,按图像视图的大小进行剪切