Android中截取當(dāng)前屏幕圖片的實(shí)例代碼
/**
* 獲取和保存當(dāng)前屏幕的截圖
*/
private void GetandSaveCurrentImage()
{
//1.構(gòu)建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();
}
由于要對(duì)SDCard進(jìn)行操作,所以別忘記了在manifest.xml文件中賦以對(duì)SDCard的讀寫(xiě)權(quán)限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
- Android Bitmap的截取及狀態(tài)欄的隱藏和顯示功能
- Android實(shí)現(xiàn)bitmap指定區(qū)域滑動(dòng)截取功能
- android 手機(jī)截取長(zhǎng)屏實(shí)例代碼
- 解析Android截取手機(jī)屏幕兩種實(shí)現(xiàn)方案
- Android實(shí)現(xiàn)拍照截取和相冊(cè)圖片截取
- Android個(gè)人中心的頭像上傳,圖片編碼及截取實(shí)例
- Android 仿QQ頭像自定義截取功能
- Android開(kāi)發(fā)獲取短信的內(nèi)容并截取短信
- Android截取視頻幀并轉(zhuǎn)化為Bitmap示例
- Android截取指定View為圖片的實(shí)現(xiàn)方法
相關(guān)文章
Android實(shí)現(xiàn)簡(jiǎn)潔的APP更新dialog數(shù)字進(jìn)度條
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)簡(jiǎn)潔的APP更新dialog數(shù)字進(jìn)度條,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04
Android6.0開(kāi)發(fā)中屏幕旋轉(zhuǎn)原理與流程分析
這篇文章主要介紹了Android6.0開(kāi)發(fā)中屏幕旋轉(zhuǎn)原理與流程,結(jié)合實(shí)例形式詳細(xì)分析了Android6.0屏幕旋轉(zhuǎn)的原理與相關(guān)實(shí)現(xiàn)流程,并附帶了Android動(dòng)態(tài)開(kāi)啟與禁用屏幕旋轉(zhuǎn)的實(shí)現(xiàn)方法,需要的朋友可以參考下2017-11-11
Android仿新浪微博發(fā)布微博界面設(shè)計(jì)(5)
這篇文章主要為大家詳細(xì)介紹了Android仿新浪微博發(fā)布微博界面設(shè)計(jì)方案,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-11-11
Android開(kāi)發(fā)學(xué)習(xí)筆記 Gallery和GridView淺析
這篇文章主要介紹了Android開(kāi)發(fā)學(xué)習(xí)筆記 Gallery和GridView淺析,需要的朋友可以參考下2014-11-11
Android智能指針輕量級(jí)Light Pointer初識(shí)
這篇文章主要為大家介紹了Android智能指針輕量級(jí)Light Pointer初識(shí)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12
flutter PageView實(shí)現(xiàn)左右滑動(dòng)切換視圖
這篇文章主要為大家詳細(xì)介紹了flutter PageView實(shí)現(xiàn)左右滑動(dòng)切換視圖,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-07-07
Android RecyclerView item選中放大被遮擋問(wèn)題詳解
這篇文章主要介紹了Android RecyclerView item選中放大被遮擋問(wèn)題詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-04-04
Android fragment 轉(zhuǎn)場(chǎng)動(dòng)畫(huà)創(chuàng)建步驟
在 Android 中,可以使用 setCustomAnimations() 方法來(lái)繪制自定義的 Fragment 轉(zhuǎn)場(chǎng)動(dòng)畫(huà),本文分步驟給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-03-03
Android使用線(xiàn)程獲取網(wǎng)絡(luò)圖片的方法
這篇文章主要為大家詳細(xì)介紹了Android使用線(xiàn)程獲取網(wǎng)絡(luò)圖片的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-06-06

