android 螢幕截圖原始碼
package
net.canking.shottest;
import
java.io.File;
import
java.io.FileNotFoundException;
import
java.io.FileOutputStream;
import
java.io.IOException;
import
android.app.Activity;
import
android.graphics.Bitmap;
import
android.graphics.Rect;
import
android.view.View;
public
class
ScreenShot {
private
static
Bitmap takeScreenShot(Activity activity) {
//
View是你需要截圖的View
View
view = activity.getWindow().getDecorView();
view.setDrawingCacheEnabled(
true
);
view.buildDrawingCache();
Bitmap
b1 = view.getDrawingCache();
//
獲取狀態列高度
Rect
frame =
new
Rect();
activity.getWindow().getDecorView().getWindowVisibleDisplayFrame(frame);
int
statusBarHeight = frame.top;
//
獲取螢幕長和高
int
width = activity.getWindowManager().getDefaultDisplay().getWidth();
int
height = activity.getWindowManager().getDefaultDisplay()
.getHeight();
//
去掉標題欄
Bitmap
b = Bitmap.createBitmap(b1,
0
,
statusBarHeight, width, height
-
statusBarHeight);
view.destroyDrawingCache();
return
b;
}
private
static
void
savePic(Bitmap b, File filePath) {
FileOutputStream
fos =
null
;
try
{
fos
=
new
FileOutputStream(filePath);
if
(
null
!= fos) {
b.compress(Bitmap.CompressFormat.PNG,
100
,
fos);
fos.flush();
fos.close();
}
}
catch
(FileNotFoundException e) {
//
e.printStackTrace();
}
catch
(IOException e) {
//
e.printStackTrace();
}
}
public
static
void
shoot(Activity a, File filePath) {
if
(filePath ==
null
)
{
return
;
}
if
(!filePath.getParentFile().exists()) {
filePath.getParentFile().mkdirs();
}
ScreenShot.savePic(ScreenShot.takeScreenShot(a),
filePath);
}
}
相關文章
- Android 5.0 螢幕錄製/截圖Android
- Android螢幕截圖方式總結Android
- SPX螢幕截圖軟體
- iOS螢幕截圖的方法iOS
- .NET 視窗/螢幕截圖
- Android獲取當前Activity的螢幕截圖Android
- selenium實現螢幕截圖
- iSnapshot for Mac螢幕截圖工具Mac
- mac蘋果螢幕截圖快捷鍵Mac蘋果
- Python網頁截圖/螢幕截圖/截長圖如何實現?Python網頁
- Mac螢幕截圖工具——iSnapshot for MacMac
- Windows 8.1怎麼給螢幕截圖Windows
- Ubuntu螢幕截圖快捷鍵知多少Ubuntu
- Flutter學習 —- 螢幕截圖和高斯模糊Flutter
- Flutter學習 ---- 螢幕截圖和高斯模糊Flutter
- iOS-圖片水印,圖片裁剪和螢幕截圖iOS
- 螢幕截圖工具Snagit 2022 macGitMac
- TechSmith Snagit 2022螢幕截圖工具MITGit
- Snagit 2022 for Mac(螢幕截圖工具)GitMac
- web端螢幕截圖,生成自定義海報!Web
- win10中怎麼拍攝螢幕截圖 在win10系統中拍攝螢幕截圖的步驟Win10
- 下載oss2上面的螢幕截圖檔案的程式碼
- CleanShot X:螢幕截圖、錄屏、滾動截圖、標註一個都不少
- 高畫質螢幕截圖工具GrabIt ,體驗不一樣的截圖感受
- 用electron開發了一個螢幕截圖工具
- Snagit 2023 for Mac(螢幕截圖軟體)GitMac
- 最強大的螢幕截圖軟體:Snagit for macGitMac
- Matplotlib 中文使用者指南 8.1 螢幕截圖
- 少俠學截圖-C#螢幕捕捉的方式C#
- Android -- 工具類(七):[ScreenUtil] (截圖,獲取螢幕寬高,顯示、隱藏虛擬鍵盤,調節螢幕亮度)Android
- Flutter 簽字畫板及螢幕或Widget截圖Flutter
- MAC小技巧|Mac螢幕截圖去除視窗陰影Mac
- Movavi Screen Recorder 22 Mac(螢幕錄影截圖軟體)Mac
- TechSmith Snagit mac最強大的螢幕截圖軟體MITGitMac
- Excel2010螢幕截圖工具使用技巧Excel
- win10截圖螢幕自動縮小怎麼回事 win10一截圖螢幕就自動縮放如何處理Win10
- windows10螢幕截圖在哪裡_win10截圖之後儲存在哪裡WindowsWin10
- vlc-android最新原始碼截圖功能實現Android原始碼