手机
当前位置:查字典教程网 >编程开发 >安卓软件开发 >Android中截取当前屏幕图片的实例代码
Android中截取当前屏幕图片的实例代码
摘要:复制代码代码如下:/***获取和保存当前屏幕的截图*/privatevoidGetandSaveCurrentImage(){//1.构建B...

复制代码 代码如下:

/**

* 获取和保存当前屏幕的截图

*/

private void GetandSaveCurrentImage()

{

//1.构建Bitmap

WindowManager windowManager = getWindowManager();

Display display = windowManager.getDefaultDisplay();

int w = display.getWidth();

int h = display.getHeight();

Bitmap Bmp = Bitmap.createBitmap( w, h, Config.ARGB_8888 );

//2.获取屏幕

View decorview = this.getWindow().getDecorView();

decorview.setDrawingCacheEnabled(true);

Bmp = decorview.getDrawingCache();

String SavePath = getSDCardPath()+"/AndyDemo/ScreenImage";

//3.保存Bitmap

try {

File path = new File(SavePath);

//文件

String filepath = SavePath + "/Screen_1.png";

File file = new File(filepath);

if(!path.exists()){

path.mkdirs();

}

if (!file.exists()) {

file.createNewFile();

}

FileOutputStream fos = null;

fos = new FileOutputStream(file);

if (null != fos) {

Bmp.compress(Bitmap.CompressFormat.PNG, 90, fos);

fos.flush();

fos.close();

Toast.makeText(mContext, "截屏文件已保存至SDCard/AndyDemo/ScreenImage/下", Toast.LENGTH_LONG).show();

}

} catch (Exception e) {

e.printStackTrace();

}

}

/**

* 获取SDCard的目录路径功能

* @return

*/

private String getSDCardPath(){

File sdcardDir = null;

//判断SDCard是否存在

boolean sdcardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);

if(sdcardExist){

sdcardDir = Environment.getExternalStorageDirectory();

}

return sdcardDir.toString();

}

由于要对SDCard进行操作,所以别忘记了在manifest.xml文件中赋以对SDCard的读写权限:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

【Android中截取当前屏幕图片的实例代码】相关文章:

Android上网获取网络上的图片方法

Android笔记之:App模块化及工程扩展的应用

android 获取屏幕像素大小的正确方法

Android View添加 Listener 实例代码

android屏幕全屏的实现代码

Android自动禁用布局里的所有子控件

分享Android开发中最有效率最快的循环代码

Android 倒影算法的实现代码

android GridView多选效果的实例代码

Android重启运用程序的代码

精品推荐
分类导航