当前位置: 首页 > news >正文

Android 编程下背景图片适配工具类

package cn.sunzn.util;

import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Matrix;

/**
 * 处理背景图片的一些工具,如放大 缩小...
 */
public class BgUtil {

    /**
     * 使背景图片适应手机屏幕分辨率
     * 
     * @param context        上下文环境
     * @param screenWidth    手机屏幕宽度
     * @param screenHeight   手机屏幕高度
     * @param resId          背景图片资源ID
     * @return               返回一个新的适应手机屏幕分辨率的图片
     */
    public static Bitmap getSuitableBg(Context context, int screenWidth, int screenHeight, int resId) {
        Bitmap bg = BitmapFactory.decodeResource(context.getResources(), resId);
        int bgWidth = bg.getWidth();
        int bgHeight = bg.getHeight();
        float scaleWidth = (float) screenWidth / bgWidth;
        float scaleHeight = (float) screenHeight / bgHeight;
        Matrix matrix = new Matrix();
        matrix.postScale(scaleWidth, scaleHeight);
        Bitmap newBg = Bitmap.createBitmap(bg, 0, 0, bgWidth, bgHeight, matrix, true);
        return newBg;
    }
}

 

相关文章:

  • javascript数组操作汇总
  • XVim的安装和卸载
  • Linux下C结构体初始化[总结]
  • linux环境搭建过程中遇到的问题
  • 我的北漂在路上--------时不时的停下脚步思考
  • Linux系统管理的基本入手点
  • 使用Android中的通知心得
  • 顺序发送异步请求、同时发送异步请求;apply()与call()的区别
  • 胖子哥的大数据之路(三)- 数据仓库的需求分析该怎么做
  • Ex2010学习(九),个性化OWA界面
  • 郑州表达式
  • 设计模式笔记-观察者(Observer)
  • python升级带来的yum异常
  • 【Java】IO Stream详细解读
  • 第三十课:光的偏振
  • android图片蒙层
  • DataBase in Android
  • dva中组件的懒加载
  • GraphQL学习过程应该是这样的
  • Java 实战开发之spring、logback配置及chrome开发神器(六)
  • JS+CSS实现数字滚动
  • Python连接Oracle
  • session共享问题解决方案
  • Travix是如何部署应用程序到Kubernetes上的
  • Vue--数据传输
  • 复习Javascript专题(四):js中的深浅拷贝
  • 近期前端发展计划
  • 利用阿里云 OSS 搭建私有 Docker 仓库
  • 深入浏览器事件循环的本质
  • 做一名精致的JavaScripter 01:JavaScript简介
  • # 数论-逆元
  • #### go map 底层结构 ####
  • #162 (Div. 2)
  • #define MODIFY_REG(REG, CLEARMASK, SETMASK)
  • #NOIP 2014#Day.2 T3 解方程
  • #stm32驱动外设模块总结w5500模块
  • #微信小程序:微信小程序常见的配置传值
  • #我与Java虚拟机的故事#连载09:面试大厂逃不过的JVM
  • (DFS + 剪枝)【洛谷P1731】 [NOI1999] 生日蛋糕
  • (ros//EnvironmentVariables)ros环境变量
  • (二)PySpark3:SparkSQL编程
  • (二开)Flink 修改源码拓展 SQL 语法
  • (附源码)springboot学生选课系统 毕业设计 612555
  • (南京观海微电子)——I3C协议介绍
  • (十三)Maven插件解析运行机制
  • (算法二)滑动窗口
  • (一)eclipse Dynamic web project 工程目录以及文件路径问题
  • . ./ bash dash source 这五种执行shell脚本方式 区别
  • ... fatal error LINK1120:1个无法解析的外部命令 的解决办法
  • .NET CORE 第一节 创建基本的 asp.net core
  • .NET MVC之AOP
  • .NET 常见的偏门问题
  • @RequestParam @RequestBody @PathVariable 等参数绑定注解详解
  • @synthesize和@dynamic分别有什么作用?
  • [2023年]-hadoop面试真题(一)