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

 更新时间:2017年09月21日 10:13:19   作者:星辰之力  
这篇文章主要为大家详细介绍了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.getWidth()) {
   matrix.postScale(scalew, scalew);
  } else {
   matrix.postScale(1 / scalew, 1 / scalew);
  }
  image.setMaxWidth(displayMetrics.widthPixels);
  float ss = displayMetrics.heightPixels > bitmap.getHeight() ? displayMetrics.heightPixels
    : bitmap.getHeight();
  image.setMaxWidth((int) ss);
  view.addView(image);
  if (bitmap != null && bitmap.isRecycled()) {
   bitmap.recycle();
  }

 }

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

相关文章

  • Android 实现抢购倒计时功能的示例

    Android 实现抢购倒计时功能的示例

    这篇文章主要介绍了Android 实现抢购倒计时功能的示例,帮助大家更好的理解和学习使用Android开发,感兴趣的朋友可以了解下
    2021-03-03
  • Kotlin Option与Either及Result实现异常处理详解

    Kotlin Option与Either及Result实现异常处理详解

    Kotlin异常处理,异常是在程序运行时可能发生的不必要的问题,并突然终止您的程序。异常处理是一个过程,使用它可以防止程序出现可能破坏我们代码的异常
    2022-12-12
  • Android游戏开发学习②焰火绽放效果实现方法

    Android游戏开发学习②焰火绽放效果实现方法

    这篇文章主要介绍了Android游戏开发学习②焰火绽放效果实现方法,以实例形式详细分析了Android中粒子对象类Particle类和粒子集合类ParticleSet类及物理引擎ParticleThread类 的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-10-10
  • Android开发中画廊视图Gallery的两种使用方法分析

    Android开发中画廊视图Gallery的两种使用方法分析

    这篇文章主要介绍了Android开发中画廊视图Gallery的两种使用方法,结合实例形式分析了Android画廊视图Gallery的简单布局与功能实现相关操作技巧,需要的朋友可以参考下
    2018-01-01
  • Android  LayoutInflater.inflate()详解及分析

    Android LayoutInflater.inflate()详解及分析

    这篇文章主要介绍了Android LayoutInflater.inflate()详解及分析的相关资料,需要的朋友可以参考下
    2017-01-01
  • Android WebView控件基本使用示例

    Android WebView控件基本使用示例

    大家好,本篇文章主要讲的是Android WebView控件基本使用示例,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2022-01-01
  • Android自定义View实现风车效果

    Android自定义View实现风车效果

    这篇文章主要为大家详细介绍了Android自定义View实现风车效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-08-08
  • android仿QQ个人主页下拉回弹效果

    android仿QQ个人主页下拉回弹效果

    这篇文章主要为大家详细介绍了android仿QQ个人主页下拉回弹效果的相关资料,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-02-02
  • Android录音播放管理工具

    Android录音播放管理工具

    这篇文章主要为大家详细介绍了Android录音播放管理工具,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01
  • Android Jetpack组件中LifeCycle作用详细介绍

    Android Jetpack组件中LifeCycle作用详细介绍

    Jetpack是谷歌在Google I/O 2017大会上发布一套帮助开发者解决Android架构设计的方案,而Lifecycle是Jetpack architecture下的一部分,一起来看一下Lifecycle的使用及原理分析
    2022-09-09

最新评论