編輯:關於Android編程
Android圖片處理整理總結:
1:Android拍照的時候我們會遇到一些狀態,比如用三星手機拍照的話,有可能在拍完照片後,照片會自動旋轉,下面這個方面是把旋轉的照片還原回來:
Bitmap bitmap = BitmapFactory.decodeFile(Const.ACT_CREATE_PIC_PATH.concat(photoName)); int angle= imageUtils.getExifOrientation(Const.ACT_CREATE_PIC_PATH.concat(photoName)); if(angle!=0){ //如果照片出現了 旋轉 那麼 就更改旋轉度數 Matrix matrix = new Matrix(); matrix.postRotate(angle); bitmap = Bitmap.createBitmap(bitmap,0, 0, bitmap.getWidth(), bitmap.getHeight(), matrix, true); }
2:如果Android應用需要處理和上傳圖片,那圖片的大小是個大問題,因為主流的Android手機拍出的照片至少要3M以上,如果你的圖片需要濾鏡或者上傳,那就會消耗很多時間。其實我們大多數時候是不需要質量那麼高的圖片的,圖片分辨率高的時候只有在查看大圖的時候有作用,在手機屏幕上查看圖片不需要質量那麼高的圖片。所以,如果不需要裁剪的時候,可以自己等比例的減小圖片的分辨率。示例代碼:
public String scaleDown(String path,Context context) { Bitmap orignalB=BitmapFactory.decodeFile(path); float ratio = Math.min((float) 974 / orignalB.getWidth(),(float) 974 / orignalB.getHeight()); int width = Math.round((float) ratio * orignalB.getWidth()); int height = Math.round((float) ratio * orignalB.getHeight()); Bitmap newB = Bitmap.createScaledBitmap(orignalB,width,height, true); String imgName=path.substring(path.lastIndexOf("/")+1,path.length()-1); String userId= UserHelper.getUserId(context); String newpath=createDirectoryAndSaveFile(newB,userId+System.currentTimeMillis()+".jpg"); orignalB.recycle(); newB.recycle(); return newpath; }
盡管Android向下兼容不好,但是一個程序還是可以在多個平台上跑的。向下兼容不好,接口改變,新的平台上不能用舊的API,舊的平台更不可能用新的API,不等於一個平台需要
運行結果:為了在坦克上方畫血條 。血條首先要有坐標x,y 寬和高width和height血量的多少life也要有。所以新建類Life要有這些參數Life類如下: 
我們知道很多apk光是靜態調試時遠遠滿足不了我們對apk的分析,這個時候,我們就需要來一波靜態調試。此處為個人筆記,也為入門小白引路,這裡就不看結果了,主要是教大家怎麼結
一、表格布局 TableLayout表格布局TableLayout以行列的形式管理子元素,每一行是一個TableRow布局對象,當然也可以是普通的View對象,Table