回答
您可以使用startActivityForResult
,傳入描述您要完成的操作的Intent,以及傳入數據源以執行操作。
幸運的是,Android包括採摘事的行動:Intent.ACTION__PICK
和數據源包含圖片: android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI
本地設備上的圖像或 android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI
SD卡上的圖像。
呼叫startActivityForResult
通過在取行動,並希望用戶從這樣的選擇圖像:
startActivityForResult(new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI), SELECT_IMAGE);
然後覆蓋onActivityResult
監聽用戶作出選擇。
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == SELECT_IMAGE)
if (resultCode == Activity.RESULT_OK) {
Uri selectedImage = data.getData();
// TODO Do something with the select image URI
}
}
一旦你有圖像你可以使用它來訪問圖像,並做你需要做的任何事情。
我的onactivityresult沒有被調用時使用此...任何建議?我設置了外部存儲權限 – 2011-11-02 11:00:04
要查看您是如何從selectedImage變量中檢索文件路徑的,請查看此答案:http://stackoverflow.com/a/10474167 – Tiago 2013-11-11 22:36:08
你也可以這樣做:
Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
photoPickerIntent.setType("image/*");
startActivityForResult(photoPickerIntent, 1);
這將選擇在所有儲存的圖像。
只是對Reto給出的答案的更新。你可以這樣做縮放圖像:
private String getPath(Uri uri) {
String[] data = { MediaStore.Images.Media.DATA };
CursorLoader loader = new CursorLoader(context, uri, data, null, null, null);
Cursor cursor = loader.loadInBackground();
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
}
- 1. 從Android應用訪問Google+照片
- 2. 從android應用程序上傳圖片
- 3. 從Android設備的圖庫中挑選圖片應用
- 4. 在android中應用背景圖片
- 5. 訪問圖片
- 6. 從圖庫中訪問圖片並在iOS應用程序庫中顯示
- 7. 如何在Silverlight應用程序中使用https訪問圖片?
- 8. 使用Android Nougat在Android圖庫中顯示應用圖片
- 9. 當直接瀏覽圖片時將圖片應用於圖片
- 10. 圖片src for 100+圖片 - iOS應用尺寸問題
- 11. 使用jQuery預覽圖片庫中的相應圖片
- 12. 從應用程序的Android工作室中挑選圖片2.1.2
- 13. 從圖庫圖片中的「分享」按鈕分享照片/照片到我的離子2應用程序
- 14. Android Twitpic應用程序 - 上傳圖片
- 15. 分享的Picasa圖片到我的Android應用
- 16. 圖片庫訪問
- 17. 照片拼圖應用
- 18. 移動應用圖片
- 19. 模糊圖片HTML5應用
- 20. 我的應用中的所有用戶的圖片
- 21. 從Facebook應用程序發佈圖片
- 22. 從iPhone應用程序上傳圖片
- 23. 從應用內抓取圖片?
- 24. 從Facebook應用上傳圖片
- 25. 從Android的Java應用程序上傳圖片Codeigniter
- 26. 如何訪問我在相機應用中保存的照片?
- 27. 在Android中使用JavaScript顯示圖片中的圖片
- 28. 無法檢索圖片從女士訪問圖片框
- 29. 使用Air應用程序保存圖片後更新Android圖片庫
- 30. 從Android片段中的圖庫中選擇圖片
我相信你所謂android.provider和一類叫做MediaStore.Images內容提供商之後[詳細信息可以在這裏找到。(HTTP:/ /developer.android.com/reference/android/provider/package-summary.html) – GregD 2009-02-15 15:07:41