91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

android矩形區域內實現截圖

小云
113
2023-08-23 18:29:00
欄目: 編程語言

要在Android設備上實現矩形區域的截圖,可以使用以下步驟:

  1. 創建一個用于顯示截圖的ImageView組件,并將其添加到布局文件中。

  2. 在需要進行截圖的地方,添加一個觸摸事件監聽器,以便用戶可以選擇矩形區域。在觸摸事件監聽器中,記錄用戶按下和抬起手指的坐標。

private int startX, startY, endX, endY;
imageView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
startX = (int) event.getX();
startY = (int) event.getY();
break;
case MotionEvent.ACTION_UP:
endX = (int) event.getX();
endY = (int) event.getY();
break;
}
return true;
}
});
  1. 在用戶抬起手指后,使用截圖方法Bitmap.createBitmap()來獲取矩形區域內的截圖。將截圖顯示在ImageView中。
imageView.setImageBitmap(captureScreen(startX, startY, endX, endY));
private Bitmap captureScreen(int startX, int startY, int endX, int endY) {
// 獲取屏幕截圖
View rootView = getWindow().getDecorView().getRootView();
rootView.setDrawingCacheEnabled(true);
Bitmap screenBitmap = rootView.getDrawingCache();
// 截取矩形區域
Bitmap croppedBitmap = Bitmap.createBitmap(screenBitmap,
startX, startY, endX - startX, endY - startY);
// 清除緩存
rootView.setDrawingCacheEnabled(false);
return croppedBitmap;
}
  1. 現在,當用戶在ImageView上滑動手指時,會記錄矩形區域的起始坐標和結束坐標,并在用戶抬起手指后顯示截圖。

注意:為了獲取屏幕截圖,需要獲取android.permission.READ_EXTERNAL_STORAGE權限,并在運行時請求此權限。

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

這樣,你就可以在Android設備上實現矩形區域的截圖了。

0
达尔| 喀喇沁旗| 得荣县| 芮城县| 德格县| 楚雄市| 塔城市| 沾益县| 曲沃县| 鄂托克前旗| 原阳县| 交城县| 黄龙县| 上杭县| 城步| 怀仁县| 梁平县| 通河县| 元谋县| 阿荣旗| 宁乡县| 涡阳县| 会泽县| 恭城| 汉中市| 东乡族自治县| 海盐县| 开平市| 治县。| 常宁市| 瑞安市| 四平市| 云南省| 新兴县| 海门市| 都兰县| 德安县| 镇巴县| 岢岚县| 大田县| 九龙县|