热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

Android图片等比例缩放和填充屏幕效果

这篇文章主要为大家详细介绍了Android图片等比例缩放和填充屏幕效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了Android图片等比例缩放和填充屏幕的具体代码,供大家参考,具体内容如下

第一种方法:在ImageView的t同事设置两个属性

 android:adjustViewBounds="true"
 android:scaleType="fitXY

第二中方法:用IamgeView的 android:scaleType  设置属性的时候  填充屏幕出现的各种问题

 /**
  * 将图片等比例缩放 setAdjustViewBounds setMaxWidth setMaxWidth必须同时设置才有效
  * 
  * @param context
  * @param view
  *   父容器
  * @param image
  *   图片控件
  * @param source
  *   图片资源
  */
 public static void setImageViewMathParent(Activity context, LinearLayout view,
   ImageView image, int source) {
  Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(),
    source);
  DisplayMetrics displayMetrics = new DisplayMetrics();
  context.getWindowManager().getDefaultDisplay()
    .getMetrics(displayMetrics);
  float scalew = (float) displayMetrics.widthPixels
    / (float) bitmap.getWidth();
  image.setScaleType(ScaleType.MATRIX);
  Matrix matrix = new Matrix();
  image.setAdjustViewBounds(true);
  if (displayMetrics.widthPixels  bitmap.getHeight() ? displayMetrics.heightPixels
    : bitmap.getHeight();
  image.setMaxWidth((int) ss);
  view.addView(image);
  if (bitmap != null && bitmap.isRecycled()) {
   bitmap.recycle();
  }

 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


推荐阅读
  • 本文详细介绍了如何在 Android 中使用值动画(ValueAnimator)来动态调整 ImageView 的高度,并探讨了相关的关键属性和方法,包括图片填充后的高度、原始图片高度、动画变化因子以及布局重置等。 ... [详细]
  • 深入解析Spring Boot自动配置机制
    本文旨在深入探讨Spring Boot的自动配置机制,特别是如何利用配置文件进行有效的设置。通过实例分析,如Http编码自动配置,我们将揭示配置项的具体作用及其背后的实现逻辑。 ... [详细]
  • 如何清除Chrome浏览器地址栏的特定历史记录
    在使用Chrome浏览器时,你可能会发现地址栏保存了大量浏览记录。有时你可能希望删除某些特定的历史记录而不影响其他数据。本文将详细介绍如何单独删除地址栏中的特定记录以及批量清除所有历史记录的方法。 ... [详细]
  • 本文详细介绍了如何使用Docker运行最简单的镜像,并创建第一个容器。通过具体的操作步骤和命令解释,帮助初学者快速上手Docker。完整课程请点击:Docker入门教程。 ... [详细]
  • 深入解析Spring启动过程
    本文详细介绍了Spring框架的启动流程,帮助开发者理解其内部机制。通过具体示例和代码片段,解释了Bean定义、工厂类、读取器以及条件评估等关键概念,使读者能够更全面地掌握Spring的初始化过程。 ... [详细]
  • PostgreSQL 最新动态 —— 2022年4月6日
    了解 PostgreSQL 社区的最新进展和技术分享 ... [详细]
  • docker镜像重启_docker怎么启动镜像dock ... [详细]
  • 本文将详细探讨 Java 中提供的不可变集合(如 `Collections.unmodifiableXXX`)和同步集合(如 `Collections.synchronizedXXX`)的实现原理及使用方法,帮助开发者更好地理解和应用这些工具。 ... [详细]
  • 深入解析Docker镜像的工作机制
    本文旨在深入探讨Docker镜像的内部结构及其工作机制,包括镜像的分层体系、联合文件系统(UnionFS)的应用,以及各层如bootfs和rootfs的具体作用。 ... [详细]
  • 本文探讨了如何通过一系列技术手段提升Spring Boot项目的并发处理能力,解决生产环境中因慢请求导致的系统性能下降问题。 ... [详细]
  • 本文将详细介绍Nose这一非标准库的Python测试框架,它虽然不是Python官方发行版的一部分,但与unittest框架紧密相关,旨在通过简化测试流程来提升开发效率。 ... [详细]
  • 深入解析Hadoop的核心组件与工作原理
    本文详细介绍了Hadoop的三大核心组件:分布式文件系统HDFS、资源管理器YARN和分布式计算框架MapReduce。通过分析这些组件的工作机制,帮助读者更好地理解Hadoop的架构及其在大数据处理中的应用。 ... [详细]
  • 烤鸭|本文_Spring之Bean的生命周期详解
    烤鸭|本文_Spring之Bean的生命周期详解 ... [详细]
  • 本文探讨了现代分布式架构的多样性,包括高并发、多活数据中心、容器化、微服务、高可用性和弹性架构等,并介绍了与这些架构相关的重要管理技术,如DevOps、应用监控和自动化运维。文章还深入分析了分布式系统的核心概念、主要用途及类型,同时对比了单体应用与分布式服务化的优缺点。 ... [详细]
  • 本文档详细介绍了如何构建和配置 EFKLK(Elasticsearch, Fluentd, Kibana, Kafka)日志采集工具链,包括命名空间创建、Elasticsearch 镜像拉取与容器运行、证书生成及配置、Helm 安装等步骤。 ... [详细]
author-avatar
王强丫ES
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有