Android之使ImageView中图片保持比例显示,且不超过最大高度和最大宽度限制

1、原来的,没有大小尺寸限制,不重要

<ImageView android:id="@+id/img_one_show" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content"
android:scaleType="fitStart" 
android:visibility="visible" 
android:src="@drawable/capture_photo_icon" 
android:layout_marginEnd="10dp" 
android:layout_marginTop="10dp"android:maxHeight="250dp" android:maxWidth="200dp"/>

2、修改后的ImageView

最大宽度和最大高度限制的dp值可根据需要设置;
要确保图片适应宽度或高度完整显示,同时限制其最大高度为250dp、最大宽度为200dp,并保持比例不变,您需要对 ImageView 的属性进行如下调整:

<ImageViewandroid:id="@+id/img_one_show"android:layout_width="wrap_content"android:layout_height="wrap_content"android:scaleType="fitCenter"android:adjustViewBounds="true"android:visibility="visible"android:src="@drawable/capture_photo_icon"android:layout_marginEnd="10dp"android:layout_marginTop="10dp"android:maxHeight="250dp"android:maxWidth="200dp"/>

3、主要改动如下:

将 android:scaleType 从 fitStart 改为 fitCenter: fitCenter 会将图片等比例缩放至图片的宽度或高度至少与 ImageView 的一个维度相匹配,然后将图片居中放置在 ImageView 内。这样既能保证图片内容完整显示,又能保持图片原始比例

添加 android:adjustViewBounds=“true”: 这个属性会让 ImageView 自动调整其边框以适应图片内容的尺寸,确保图片按比例缩放时不会被剪裁,并且始终保持设定的最大高度和宽度限制

通过这些更改,您的 ImageView 将会以保持原图比例的方式显示图片,同时确保图片的高度不超过 250dp,宽度不超过 200dp。图片会根据自身的长宽比自动调整,以适应这两个最大尺寸限制,并通过 fitCenter 居中显示在 ImageView 中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/9686.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何使用Whisper音频合成模型

Whisper 是一个通用语音识别模型&#xff0c;由 OpenAI 开发。它可以识别多种语言的语音&#xff0c;并将其转换为文本。Whisper 模型采用了深度学习技术&#xff0c;具有高准确性和鲁棒性。 1、技术原理及架构 Whisper 的工作原理&#xff1a;音频被分割成 30 秒的片段&#…

云计算导论(2)---云计算基础

文章目录 1. 分布式计算2. 分布式计算系统架构3. 分布式计算关键技术4. 分布式计算性能优化方法5. 云计算的基本概念6. 云计算的关键技术 1. 分布式计算 1. 定义&#xff1a;分布式计算是一种计算方法&#xff0c;将一个大型任务拆分成多个小任务&#xff0c;并分配给多台计算机…

c#绘制渐变色的Led

项目场景&#xff1a; c#绘制渐变色的button using System; using System.ComponentModel; using System.Drawing; using System.Drawing.Drawing2D; using System.Windows.Forms; using static System.Windows.Forms.AxHost;namespace WindowsFormsApp2 {public class Gradie…

【C++】-类模板-002

1创建类模板 &#xff08;1&#xff09;新建工程 &#xff08;2&#xff09; &#xff08;3&#xff09; &#xff08;4&#xff09; &#xff08;5&#xff09;模板运行结果 2【UI】设计器 &#xff08;1&#xff09;跳转到【UI】设计器 &#xff08;2&#xff09;添加…

纯血鸿蒙APP实战开发——一镜到底“页面转场”动画

介绍 本方案做的是页面点击卡片跳转到详情预览的转场动画效果 效果图预览 使用说明 点击首页卡片跳转到详情页&#xff0c;再点击进入路由页面按钮&#xff0c;进入新的路由页面 实现思路 首页使用了一种视觉上看起来像是组件的转场动画&#xff0c;这种转场动画通常是通过…

教你解决PUBG绝地求生打完一把游戏无法返回大厅的问题

《绝地求生》&#xff08;PUBG&#xff09;作为风靡全球的战术竞技大作&#xff0c;凭借其高度还原的战场氛围和扣人心弦的生存挑战吸引了大量游戏玩家。不过&#xff0c;部分玩家在经历了一场紧张激烈的比赛后&#xff0c;遭遇了一个小困扰&#xff1a;游戏未能顺畅过渡到结算…

即时通讯技术文集(第37期):IM代码入门实践(Part1) [共16篇]

为了更好地分类阅读 52im.net 总计1000多篇精编文章&#xff0c;我将在每周三推送新的一期技术文集&#xff0c;本次是第37 期。 [- 1 -] 一种Android端IM智能心跳算法的设计与实现探讨&#xff08;含样例代码&#xff09; [链接] http://www.52im.net/thread-783-1-1.html […

C++基础中的存储类别

存储的类别是变量的属性之一&#xff0c;C语言定义了4种变量的存储类别&#xff0c;分别是auto变量、static变量、register变量和extern变量。以下重点介绍这几种类型。 一、auto变量 auto变量是C默认的存储类型。函数内未加存储类型说明的变量均被称为自动变量&#xff0c;即…

docker-compose完成mysql8.0+环境搭建

1、准备my.cnf文件到指定目录&#xff08;和基础的增加了一个default_authentication_pluginmysql_native_password 的身份验证插件配置信息&#xff09; 原因&#xff1a;官方提到&#xff1a; 该方式可以解决&#xff1a;Authentication plugin ‘caching_ sha2_password‘ c…

FebHost:什么是乌兹别克斯坦.UZ域名?

.uz域名是专门分配给乌兹别克斯坦的国家代码顶级域&#xff08;ccTLD&#xff09;。与代表英国的 “.uk” 或代表法国的 “.fr” 等其他国家代码顶级域类似&#xff0c;”.uz” 是一个代表特定国家的双字母代码。在这种情况下&#xff0c;它代表乌兹别克斯坦。 .uz 域名在建立…

可微分矢量图形光栅化用于编辑和学习

图1. 我们引入了一种通过反向传播将光栅和矢量域联系起来的矢量图形可微分光栅化器。可微分光栅化实现了许多新颖的矢量图形应用。&#xff08;a&#xff09;在几何约束下&#xff0c;通过局部优化图像空间度量&#xff08;如不透明度&#xff09;来实现交互式编辑。&#xff0…

《第一行代码》第二版学习笔记(10)——基于位置的服务

文章目录 一、使用百度定位二、获取经纬度使用百度地图移动到我的位置并让“我”显示在地图上 Android Studio中没有signingReport文件&#xff0c;解决参考文档 一、使用百度定位 下载百度LBS开放平台的SDK 在项目的app.gradle文件下添加依赖&#xff1a;implementation fil…

fb设备驱动框架分析

一、字符设备注册过程&#xff1a; 归根到底&#xff0c;fb设备也是一个字符设备&#xff0c;所以逃不开常规的字符设备驱动框架&#xff1a; Linux内核中编写字符设备驱动通常遵循以下步骤&#xff1a; ①、定义主设备号&#xff1a; 在Linux中&#xff0c;每个字符设备都…

2024洗地机选购指南 | 怎么选洗地机不会被坑?

家里的地板总是需要打扫&#xff0c;但工作忙碌的我们往往没有足够的时间来打理。洗地机不仅能够帮助我们节省宝贵的时间&#xff0c;还能让我们的家变得一尘不染。今天&#xff0c;笔者将为大家讲讲挑选洗地机的技巧&#xff0c;告诉大家怎么挑选洗地机不会被坑&#xff0c;顺…

ECO 视频分类模型

ECO分类模型 ECO 分类模型&#xff0c;可以对视频进行分类&#xff0c;视频是静止画面的集合&#xff0c;并短时间内进行播放&#xff0c;在人眼中形成了视频&#xff0c;通过 FPS 单位进行计算&#xff0c;指的是每秒显示多少张图片。如果直接把图片组合一张大图&#xff0c;…

开源直播电商系统(仿抖音电商模式)

当下&#xff0c;传统的图文电商模式正在走向没落&#xff0c;以“抖音”为首的直播电商模式备受用户追捧&#xff0c;它具有直观与互动的特点&#xff0c;拥有传统电商所不具备的优势。而且&#xff0c;当前正是直播电商的红利期&#xff0c;很多主播和品牌商都通过直播电商业…

numpy中高维数组变为向量与numpy中增加和删除维度实现方法

在NumPy中&#xff0c;将高维数组变为向量通常指的是将多维数组&#xff08;如二维或更高维度的数组&#xff09;转换为一维数组&#xff08;向量&#xff09;。这一过程可以通过多种方法实现&#xff0c;具体如下&#xff1a; 使用numpy.reshape()函数&#xff1a;这个函数可…

人工智能|推荐系统——工业界的推荐系统之冷启动

UGC的物品冷启有哪些 ⼩红书上⽤户新发布的笔记。 B站上⽤户新上传的视频。 今⽇头条上作者新发布的⽂章。 为什么要特殊对待新笔记&#xff1f; 新笔记缺少与⽤户的交互&#xff0c;导致推荐的难度⼤、效果差。 扶持新发布、低曝光的笔记&#xff0c;可以增强作者发布意愿…

大众点评全国店铺基础信息采集-丽人类店铺2024年5月

2024年5月最新采集大众点评全国(内地)-丽人大类-店铺基础信息&#xff0c;180余万家 丽人类店铺 示例&#xff1a; 店铺id laz9TIPMSTtlyGld 店铺名称 S.NAIL美甲美睫 十分制效果评分 7.7 十分制服务评分 7.8 十分制环境评分 7.8 人均价格 191 评价数量 128 店铺地址 …

超越传统游戏:生成式人工智能对游戏的变革性影响

人工智能&#xff08;AI&#xff09;在游戏中的应用 游戏产业是一个充满活力、不断发展的领域&#xff0c;人工智能&#xff08;AI&#xff09;的融入对其产生了重大影响。这一技术进步彻底改变了游戏的开发、玩法和体验方式。本文分析的重点是传统人工智能和生成式人工智能在游…