2012-12-17 77 views
-1

我有一個Android應用程序,我一直在努力,我一直在使用內置的裁剪圖像意圖(使用圖庫)裁剪圖片。我需要允許用戶將圖像裁剪爲正方形(1:1),然後我將稍後操作圖像。這是我的問題:出於某種原因完成了我的理解應用程序強制關閉並返回一個NullPointerException ...有時。嘗試從新創建的(裁剪後的)圖像中檢索URI時會發生這種情況。它發生在這樣的隨機時間,它開始讓我懷疑它只是一個OME以一種奇怪的方式表現自己。無論如何,我完全迷失了,並且已經問過這個問題沒有真正的答案(除了NullPointerException是什麼),這沒有幫助。我在這裏發佈了我的問題:Link to previously asked question有沒有人有Android的cropImage示例?

如果你可以回答任何可能會令人敬畏的建議,否則我放棄標準的Gallery Crop並寫我自己的裁剪方法。我對編程相當陌生,所以如果你們可以推薦任何可能很棒的「自定義作物活動」的例子或代碼片段。

PS。我正在尋找類似於Instagrams裁剪方法的方法。你認爲這是像我這樣的新手可以做的嗎?還是需要很多專業知識?

回答

1

這將打開選擇窗口,詢問您需要從何種類型的畫廊獲取圖像(將顯示可用於此的選項和應用程序),一旦您選擇它,它會顯示作物畫面。

我希望它能幫助!...

Intent intent = new Intent(Intent.ACTION_GET_CONTENT, null); 

Uri imageUri = Uri.fromFile(new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/yourTempDirectory/")); 
intent.setData(imageUri); 
intent.setType("image/*."); 
intent.putExtra("crop", "true"); 
intent.putExtra("aspectX", 1); 
intent.putExtra("aspectY", 1); 
intent.putExtra("outputX", 200); 
intent.putExtra("outputY", 200); 
intent.putExtra("scale", true); 
intent.putExtra("return-data", true); 

try {  
    startActivityForResult(intent, GALLERY_CAPTURE); 
}catch (ActivityNotFoundException e) { 
    Log.e("ERROR!!!! : ",""+e); 
} 

重要!您必須聲明

final int GALLERY_CAPTURE = 1; 

讓我知道你是否需要任何幫助。

0

有一個開源的Android庫,工作得很好,它被稱爲CropImage,試試看。

相關問題