編輯:關於Android編程
該篇文章是說明在Android手機或平板電腦中如何實現截取當前屏幕的功能,並把截取的屏幕保存到SDCard中的某個目錄文件夾下面。
實現的代碼如下:
/** * 獲取和保存當前屏幕的截圖 */ private void GetandSaveCurrentImage() { //1.構建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(); }
由於要對SDCard進行操作,所以別忘記了在manifest.xml文件中賦以對SDCard的讀寫權限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
希望本文所述對大家學習Android軟件編程有所幫助。
其實最早接觸OpenCV是很久很久之前的事了,大概在2013年的5,6月份,當時還是個菜逼(雖然現在也是個菜逼),在那一段時間,學了一段時間的android(並不算學,一
平時的一些Android學習視頻中,他們都是基於Android2.2的去使用ListView,我看到都是會在UI線程中去訪問網絡獲取數據,但是這在Android4.0之後
需求是在我按下按鈕時,該變按鈕顏色,使用戶感覺到自己按了按鈕,當松開的時候,變回原來的顏色。正常時:按下時:有人說,直接監聽按鈕的按下事件不得了嘛,其實這樣確實能實現同樣
近期要做一個含有兩個tab切換頁面,兩個頁面有公共的描述信息區域,兩個tab都是listview,可以向上或向下拉動刷新,在頁面中部有一個tab切換區域,向上滑動的時候t