Boa tarde!
Tenho uma aplicação de gerenciamento de produtos que utiliza SQLite e cada produto tem uma imagem, as imagens são guardadas em /sdcard/Produtos, e o meu cliente me pediu que eu fizesse uma Gallery com as imagens dos produtos que estão no SQLite, eu sei fazer com a pessoa clicando na ListView e ele mostrando a imagem, mais fazer uma galley a partir dessa lista eu ja não sei.
Dei uma pesquisada e vi que as imagens tem de estar dentro da pasta drawable pra depois referenciar com o R.id…
http://developer.android.com/resources/tutorials/views/hello-gallery.html
Alguém sabe como posso fazer uma Gallery de arquivos que estão dentro do sdcard?
Não sei se fui muito claro…
Desde já agradeço
A unica diferença é que invés de:
private Bitmap load(int resourceId) {
return BitmapFactory.decodeResource(getResources(), resourceId);
}
Voce carrega do SDCARD
private Bitmap load(String resourcePath) {
return BitmapFactory.decodeStream(new FileInputStream(newFile(resourcePath)));
}
Fala Marky
Brigado pela resposta cara!
Eu fiz assim:
public class ImageAdapter extends BaseAdapter {
int mGalleryItemBackground;
private Context mContext;
ArrayList<String> imagens;
public ImageAdapter(Context c, ArrayList<String> imagens){
mContext = c;
TypedArray attr = mContext.obtainStyledAttributes(R.styleable.HelloGallery);
mGalleryItemBackground = attr.getResourceId(
R.styleable.HelloGallery_android_galleryItemBackground, 0);
attr.recycle();
this.imagens= imagens;
}
public int getCount() {
return imagens.size();
}
public Object getItem(int position) {
return position;
}
public long getItemId(int position) {
return position;
}
public View getView(int position, View convertView, ViewGroup parent) {
ImageView imageView = new ImageView(mContext);
imageView.setImageBitmap(BitmapFactory.decodeFile("/sdcard/Perfumes/"+imagens.get(position)));
imageView.setLayoutParams(new Gallery.LayoutParams(150, 100));
imageView.setScaleType(ImageView.ScaleType.FIT_XY);
imageView.setBackgroundResource(mGalleryItemBackground);
return imageView;
}
E depois na “view” da Gallery
Gallery gallery = (Gallery) findViewById(R.id.gallery);
gallery.setAdapter(new ImageAdapter(this, imagens));
Vlww []'s