2015-06-11 148 views
-1

我在android eclipse中設計了一款益智遊戲。我在名爲「puzzle_image01」的資源可繪製文件中有一張圖片。我想把這個圖像分成9個部分,並把它放到一些變量中。然後用它們來拼圖。現在,我如何將圖像分成9部分?如何將圖像分割成android eclipse中的某些部分?

感謝您的建議。

回答

1
for(int i = 0; i < 9; ++i) { 

    int indexY = 0; 

    if(i < 3) { 
     imageStartY = 0; 
     imageFinishY = sourceBitmap.height()/3; 
    } 

    else if(i < 6) { 
     imageStartY = sourceBitmap.height()/3; 
     imageFinishY = (sourceBitmap-height()/3) * 2; 
    } 

    else if(i < 9) { 
     imageStartY = (sourceBitmap.height()/3) * 2; 
     imageFinishY = sourceBitmap.height(); 
    } 

    Bitmap resizedbitmap = Bitmap.createBitmap(sourceBitmap 
              , ((sourceBitmap.width())/3) * i 
              , imageStartY 
              ,((sourceBitmap.width())/3) * i + sourceBitmap.width() 
              , imageFinishY) 
} 
1

有趣的挑戰。沒有對此進行測試,但它適用於圖像尺寸除以各自的值大於零的任何行/列組合:

private Bitmap[][] split(Bitmap bitmap, int rows, int columns){ 
    int[] dimens = new int[]{ bitmap.getWidth()/rows, bitmap.getHeight()/columns }; 

    Bitmap[][] splitMap = new Bitmap[rows][columns]; 
    for(int i = 0; i < rows; i++){ 
     for(int j = 0; j < columns; j++){ 
      splitMap[i][j] = Bitmap.createBitmap(bitmap, i * dimens[0], j * dimens[1], dimens[0], dimens[1]); 
     } 
    }  

    return splitMap; 
}