2016-02-13 25 views
1

它從字符串文件中獲取圖像的值,但我想指示它從手機內存中收集。任何幫助?從Android的外部手機內存中的圖片popuplating列表視圖

MainActivity.java

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     gridView = (GridView) findViewById(R.id.gridView); 
     gridAdapter = new GridViewAdapter(this, R.layout.grid_item_layout, getData()); 
     gridView.setAdapter(gridAdapter); 

     gridView.setOnItemClickListener(new OnItemClickListener() { 

public void onItemClick(AdapterView<?> parent, View v, int position, long id) { 

       ImageItem item = (ImageItem) parent.getItemAtPosition(position); 

       //Create intent 
       Intent intent = new Intent(MainActivity.this, DetailsActivity.class); 
       intent.putExtra("title", item.getTitle()); 
       intent.putExtra("image", item.getImage()); 

       //Start details activity 
       startActivity(intent); 
      } 
     }); 
    } 
private ArrayList<ImageItem> getData() { 

     final ArrayList<ImageItem> imageItems = new ArrayList<>(); 
     TypedArray imgs = getResources().obtainTypedArray(R.array.image_ids); 
     for (int i = 0; i < imgs.length(); i++) { 
      Bitmap bitmap = BitmapFactory.decodeResource(getResources(), imgs.getResourceId(i, -1)); 
      imageItems.add(new ImageItem(bitmap, "Image#" + i)); 
     } 
     return imageItems; 
    } 

    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 

     if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK && data != null){ 
      Uri selectedImage = data.getData(); 
      ImageItem.setImageURI(selectedImage); 

     } 
     super.onActivityResult(requestCode, resultCode, data); 
    } 

} 

回答

0

使用Environment.getExternalStorageDirectory()到達外部存儲裝置(其中,在某些設備,是SD卡)的根。列出在您的設備上查找您的圖像的所有文件