获取屏幕宽度高度截图的工具类
来源:互联网 发布:怪物猎人3捏脸数据库 编辑:程序博客网 时间:2024/06/14 21:15
import android.app.Activity;import android.content.Context;import android.graphics.Bitmap;import android.graphics.Rect;import android.util.DisplayMetrics;import android.view.View;import android.view.WindowManager;/** * 获得屏幕相关的辅助类 */public class ScreenUtils { private ScreenUtils() { /* cannot be instantiated */ throw new UnsupportedOperationException("cannot be instantiated"); } /** * 获得屏幕宽度 * * @param context * @return */ public static int getScreenWidth(Context context) { WindowManager wm = (WindowManager) context .getSystemService(Context.WINDOW_SERVICE); DisplayMetrics outMetrics = new DisplayMetrics(); wm.getDefaultDisplay().getMetrics(outMetrics); return outMetrics.widthPixels; } /** * 获得屏幕高度 * * @param context * @return */ public static int getScreenHeight(Context context) { WindowManager wm = (WindowManager) context .getSystemService(Context.WINDOW_SERVICE); DisplayMetrics outMetrics = new DisplayMetrics(); wm.getDefaultDisplay().getMetrics(outMetrics); return outMetrics.heightPixels; } /** * 获得状态栏的高度 * * @param context * @return */ public static int getStatusHeight(Context context) { int statusHeight = -1; try { Class<?> clazz = Class.forName("com.android.internal.R$dimen"); Object object = clazz.newInstance(); int height = Integer.parseInt(clazz.getField("status_bar_height") .get(object).toString()); statusHeight = context.getResources().getDimensionPixelSize(height); } catch (Exception e) { e.printStackTrace(); } return statusHeight; } /** * 获取当前屏幕截图,包含状态栏 * * @param activity * @return */ public static Bitmap snapShotWithStatusBar(Activity activity) { View view = activity.getWindow().getDecorView(); view.setDrawingCacheEnabled(true); view.buildDrawingCache(); Bitmap bmp = view.getDrawingCache(); int width = getScreenWidth(activity); int height = getScreenHeight(activity); Bitmap bp = null; bp = Bitmap.createBitmap(bmp, 0, 0, width, height); view.destroyDrawingCache(); return bp; } /** * 获取当前屏幕截图,不包含状态栏 * * @param activity * @return */ public static Bitmap snapShotWithoutStatusBar(Activity activity) { View view = activity.getWindow().getDecorView(); view.setDrawingCacheEnabled(true); view.buildDrawingCache(); Bitmap bmp = view.getDrawingCache(); Rect frame = new Rect(); activity.getWindow().getDecorView().getWindowVisibleDisplayFrame(frame); int statusBarHeight = frame.top; int width = getScreenWidth(activity); int height = getScreenHeight(activity); Bitmap bp = null; bp = Bitmap.createBitmap(bmp, 0, statusBarHeight, width, height - statusBarHeight); view.destroyDrawingCache(); return bp; }}
0 0
- 获取屏幕宽度高度截图的工具类
- 获取屏幕高度、宽度
- iphone 获取屏幕的宽度和高度
- 获取屏幕的高度和宽度DisplayMetrics
- 获取屏幕或者控件的宽度高度
- Jquery获取当前屏幕的宽度、高度
- android获取屏幕的高度和宽度
- Android 里面获取屏幕的高度,宽度
- 获取屏幕高度和宽度 的方法
- Android 获取屏幕的宽度和高度
- android: 获取屏幕的宽度和高度
- 获取屏幕的宽度和高度
- Android获取屏幕的高度和宽度
- js获取屏幕高度、宽度的问题
- android获取屏幕的高度和宽度
- android获取屏幕的高度和宽度
- php获取屏幕的宽度和高度
- 获取当前屏幕的宽度和高度
- C++开发必看 四种强制类型转换的总结
- 学习面向对象编程和面向接口编程的区别?
- 为什么你投不出阿里巴巴?这些大咖的分享你读了吗?
- adaboost训练 之 弱分类器训练原理
- RabbitMQ (五)主题(Topic)
- 获取屏幕宽度高度截图的工具类
- VC如何获取对话框中控件的坐标
- 进程的优先级设置与获取,进程时间
- 客户端工程的搭建
- 建立flask的虚拟环境
- 关闭酷狗右下角的弹窗
- 介绍Java中的内存泄漏
- Oracle 10g Audit(审计) --- 记录登录用户在Oracle中的所有操作
- OJ1069