2012-01-01 87 views
1

爲什麼當我從意圖庫中加載圖像時,這不會旋轉。就好像通過Android圖庫查看旋轉一樣?來自畫廊意圖的Android圖像

===========================================

我解決了這個辦法

int orientation=getOrientationImageFile(); 

    Canvas c=new Canvas(bmO); 

    if(orientation!=0){ 
     Matrix matrix=new Matrix(); 
     matrix.setRotate(orientation); 
     c.drawBitmap(bm, matrix, new Paint()); 

     bm=Bitmap.createBitmap(bmO, 0, 0, bmO.getWidth(), bmO.getHeight(), matrix, true); 
    } 

private int getOrientationImageFile() { 
     String[] proj = { MediaStore.Images.Media.ORIENTATION }; 
     Cursor cursor = managedQuery(selectedImageUri, proj, null, null, null); 
     int column_index = cursor 
       .getColumnIndexOrThrow(MediaStore.Images.Media.ORIENTATION); 
     cursor.moveToFirst(); 
     return cursor.getInt(column_index); 
} 

selectedImageUri - 它年代DATA從意圖畫廊

BMO -bitmap通過selectedImageUri

創建返回

我嘗試過,它的工作原理,但是解決方案,還是可以解決?還有其他更好的解決方案?

+0

請詳細瞭解您的問題。 – 2012-01-01 21:32:22

+0

@ coder_For_Life22例如,如果我在Gallery中的風景圖片中使用手機拍照時,Android顯示效果不錯,但是如果我加載了意圖圖庫,則不會旋轉,並且在上下方有相當多的黑色邊框圖片。無論自動屏幕旋轉是否設置,都會發生。 – 2012-01-01 21:42:21

回答