Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> android截屏:保存一個view的內容為圖片並存放到SD卡

android截屏:保存一個view的內容為圖片並存放到SD卡

編輯:關於Android編程

項目中偶爾會用到截屏分享,於是就有了下面這個截屏的方法~

下面得saveImage()方法就是保存當前Activity對應的屏幕所有內容的截屏保存。

private void saveImage() {

// SD卡保存路徑

String savePath = Environment.getExternalStorageDirectory() + "/temp.png";

// showProgress("請稍候", "正在保存圖片……");

saveMyBitmap(getBitmapFromRootView(getWindow().getDecorView()), savePath);

}

// 獲取view並轉換成bitmap圖片

private static Bitmap getBitmapFromRootView(View view) {


view.setDrawingCacheEnabled(true);

Bitmap bmp = Bitmap.createBitmap(view.getDrawingCache());

view.setDrawingCacheEnabled(false);

if (bmp != null) {

return bmp;

} else {

return null;

}

}


// 把bitmao圖片保存到對應的SD卡路徑中

private void saveMyBitmap(Bitmap mBitmap, String path) {

File f = new File(path);

try {

f.createNewFile();

} catch (IOException e) {

e.printStackTrace();

}

FileOutputStream fOut = null;

try {

fOut = new FileOutputStream(f);

} catch (FileNotFoundException e) {

e.printStackTrace();

}

if (mBitmap != null) {

// 保存格式為PNG 質量為100

mBitmap.compress(Bitmap.CompressFormat.PNG, 100, fOut);

}

try {

fOut.flush();

} catch (IOException e) {

e.printStackTrace();

}

try {

fOut.close();

} catch (IOException e) {

e.printStackTrace();

}

}

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved