Android圖片等比例縮放和填充屏幕效果
更新時間:2017年09月21日 10:13:19 作者:星辰之力
這篇文章主要為大家詳細介紹了Android圖片等比例縮放和填充屏幕效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了Android圖片等比例縮放和填充屏幕的具體代碼,供大家參考,具體內容如下
第一種方法:在ImageView的t同事設置兩個屬性
android:adjustViewBounds="true" android:scaleType="fitXY
第二中方法:用IamgeView的 android:scaleType 設置屬性的時候 填充屏幕出現(xiàn)的各種問題
/** * 將圖片等比例縮放 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(); } }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Kotlin Option與Either及Result實現(xiàn)異常處理詳解
Kotlin異常處理,異常是在程序運行時可能發(fā)生的不必要的問題,并突然終止您的程序。異常處理是一個過程,使用它可以防止程序出現(xiàn)可能破壞我們代碼的異常2022-12-12Android游戲開發(fā)學習②焰火綻放效果實現(xiàn)方法
這篇文章主要介紹了Android游戲開發(fā)學習②焰火綻放效果實現(xiàn)方法,以實例形式詳細分析了Android中粒子對象類Particle類和粒子集合類ParticleSet類及物理引擎ParticleThread類 的使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-10-10Android開發(fā)中畫廊視圖Gallery的兩種使用方法分析
這篇文章主要介紹了Android開發(fā)中畫廊視圖Gallery的兩種使用方法,結合實例形式分析了Android畫廊視圖Gallery的簡單布局與功能實現(xiàn)相關操作技巧,需要的朋友可以參考下2018-01-01Android LayoutInflater.inflate()詳解及分析
這篇文章主要介紹了Android LayoutInflater.inflate()詳解及分析的相關資料,需要的朋友可以參考下2017-01-01Android?Jetpack組件中LifeCycle作用詳細介紹
Jetpack是谷歌在Google?I/O?2017大會上發(fā)布一套幫助開發(fā)者解決Android架構設計的方案,而Lifecycle是Jetpack?architecture下的一部分,一起來看一下Lifecycle的使用及原理分析2022-09-09