有沒有人知道如何訪問手機的照片庫? 我正在做一個應用程序,拍攝一張植物葉子的圖片,並分析圖像以確定它是否確定。我們希望我們 可以給用戶兩個選擇拍攝葉子的照片或使用用戶已經拍攝的葉子的圖像。然而,我們得到了圖片參與,但我們不知道如何訪問照片庫 。如何從手機的照片庫訪問圖片?
17
A
回答
32
您必須使用內置的Intents
啓動Gallery應用程序。在這之後,你的onActivityResult()
,獲得所選擇的圖像的路徑和您的圖像加載到你的ImageView
main.xml中
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
<Button
android:id="@+id/loadimage"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Load Image"
/>
<TextView
android:id="@+id/targeturi"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<ImageView
android:id="@+id/targetimage"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
</LinearLayout>
你的活動
package com.exercise.AndroidSelectImage;
import java.io.FileNotFoundException;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
public class AndroidSelectImage extends Activity {
TextView textTargetUri;
ImageView targetImage;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button buttonLoadImage = (Button)findViewById(R.id.loadimage);
textTargetUri = (TextView)findViewById(R.id.targeturi);
targetImage = (ImageView)findViewById(R.id.targetimage);
buttonLoadImage.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent intent = new Intent(Intent.ACTION_PICK,
android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, 0);
}});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK){
Uri targetUri = data.getData();
textTargetUri.setText(targetUri.toString());
Bitmap bitmap;
try {
bitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(targetUri));
targetImage.setImageBitmap(bitmap);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
14
待辦事項不要忘記將以下權限添加到AndroidManifest.xml中:
<uses-permission android:name="android.permission.MANAGE_DOCUMENTS" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
相關問題
- 1. 如何訪問照片使用j2me代碼的手機圖庫
- 2. android如何獲得手機照片庫?
- 3. 如何從手機圖庫中獲取照片?
- 4. 如何從Android手機圖庫上傳照片?
- 5. 如何從照片庫中隨機選擇一張圖片
- 6. 如何訪問Instagram照片
- 7. 如何使用圖片照片作爲Windows手機按鈕
- 8. 如何刪除媒體庫中保存圖片照片在Windows手機c#
- 9. 訪問iphone照片庫中的所有照片?
- 10. ImageView的不顯示從手機相機或照片庫
- 11. 圖片庫訪問
- 12. 從照片庫
- 13. [iOS]從照片庫中選擇圖片
- 14. phonegap從iOS照片庫複製圖片
- 15. 如何從ipad中的庫中訪問照片?
- 16. iphone庫訪問iphone照片庫
- 17. PHP:從手機上傳照片
- 18. 如何從照片庫的PhoneGap的圖片在Android
- 19. 如何將照相機捕獲的照片保存在圖片庫中
- 20. 如何訪問Android手機上的所有圖片?
- 21. 當我從圖庫中選擇照片或從相機拍攝照片時,我的照片正在旋轉?
- 22. 的Xcode SIGABRT訪問照片庫
- 23. 我如何使用目標c中的照片框架訪問照片庫中的照片
- 24. 從Corona/Lua的移動設備照片庫訪問照片屬性?
- 25. 從照片庫中獲取照片
- 26. 從照片庫中檢索照片
- 27. 如何從ODK訪問照片與MySQL數據庫聚合?
- 28. 如何從手機圖片獲取圖片到遠程XPage?
- 29. 手動要求用戶訪問照片或相機
- 30. 窗戶手機顯示照片的照片
我試圖把上傳的圖像作爲背景你知道嗎? – nothingness
只有在您還沒有WRITE_EXTERNAL_STORAGE時才需要READ_EXTERNAL_STORAGE。你確定MANAGE_DOCUMENTS有道理嗎? https://developer.android.com/reference/android/Manifest.permission.html表示:「此權限只能由平臺文檔管理應用程序請求,此權限不能授予第三方應用程序。」 –