溫馨提示×

android截屏代碼怎么寫

小億
151
2023-10-13 19:13:55
欄目: 編程語言

在Android中,可以使用以下代碼來實現截屏:

private void takeScreenshot() {
// 獲取屏幕視圖
View view = getWindow().getDecorView().getRootView();
// 創建Bitmap對象并指定大小
Bitmap bitmap = Bitmap.createBitmap(view.getWidth(), view.getHeight(), Bitmap.Config.ARGB_8888);
// 創建Canvas對象,并將Bitmap與其關聯
Canvas canvas = new Canvas(bitmap);
// 將屏幕視圖繪制到Canvas上
view.draw(canvas);
// 保存截屏圖片
try {
// 指定保存路徑和文件名
String filePath = Environment.getExternalStorageDirectory() + "/screenshot.png";
File file = new File(filePath);
// 創建文件輸出流
FileOutputStream fos = new FileOutputStream(file);
// 將Bitmap對象壓縮為PNG格式,并寫入文件輸出流
bitmap.compress(Bitmap.CompressFormat.PNG, 100, fos);
// 刷新文件輸出流
fos.flush();
// 關閉文件輸出流
fos.close();
Toast.makeText(this, "截屏已保存至" + filePath, Toast.LENGTH_SHORT).show();
} catch (IOException e) {
e.printStackTrace();
}
}

在調用截屏方法之前,需要添加相應的權限到AndroidManifest.xml文件中:

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

當調用takeScreenshot()方法時,會將當前屏幕內容保存為PNG格式的圖片,并保存到設備的外部存儲目錄中,同時顯示一個Toast提示保存路徑。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女