2012-03-20 14 views
0

この問題の解決方法を見つけようとしていますが、答えが見つかりませんでした。私はいくつかのユーザーの詳細、すなわちID、名前、およびユーザーのURLの詳細を格納するデータベースを持っています。 sdcardに画像を保存しています。ユーザーのログイン時にすべての詳細が保存され、イメージがsdcardにダウンロードされます。そして今、別のユーザーがアプリケーションにログインすると、前のすべての詳細を削除し、新しいユーザーの詳細を保存します。データベースandroidのsdカードからの更新と画像の取得

そして、以下のコードを使用すると、sdcardから1つの画像を取得することができ、リストビューで試してみることができます。私はイメージを見ることができません。

File mfile = new File("sdcard/Image9085.png"); 
    if(mfile.exists()){ 
     Bitmap picture = BitmapFactory.decodeFile(mfile.getAbsolutePath()); 
     pic.setImageBitmap(picture); 
    } 

これらの両方の問題を解決するのに手伝ってください。

答えて

2

画像パス多分間違っている、以下の好きなはずです:ListViewのはCustomAdapterを使用するために

File mfile = new File("/sdcard/Image9085.png"); 
if(mfile.exists()){ 
    Bitmap picture = BitmapFactory.decodeFile(mfile.getAbsolutePath()); 
    pic.setImageBitmap(picture); 
} 
+0

いいえ1枚の画像でうまくいきます。 – wolverine

1

は(getViewメソッド内でBaseAdapter を拡張するクラスを作成します意味)

public View getView(int position, View convertView, ViewGroup parent) { 


      View view = inflater.inflate(resourceId, null); 
      if(mykids_data.get(position).getImage()!=null) 
      { 
       Download dr=new Download(); 
       dr.iv=img; 
       dr.execute(); 
       //img.setImageDrawable(dr.d); 
      } 
//    
      return view; 
     } 

AsyncTaskを拡張するクラスのダウンロードを使用します doinBackground関数内では、

protected Drawable doInBackground(Void... params) { 


    File mfile = new File("sdcard/Image9085.png"); 
     if(mfile.exists()){ 
      Bitmap picture = BitmapFactory.decodeFile(mfile.getAbsolutePath()); 


    Drawable d=new BitmapDrawable(picture); 

          d=drawable; 
        } 
+0

もう1つのことは、ダウンロードした写真にランダムに名前を付けました。同じような詳細の画像を取得するにはどうすればいいですか? – wolverine

+0

はランダムに意味する? 1つのarraylistのみを使用する画像に名前を付けるときはいつでも1つのことを行うことができます imagenamesはarraylistにその名前を格納します – Manju

+0

ランダムジェネレータ=新しいRandom(); int n = 10000; n = generator.nextInt(n); Image_name = "Channel_Image - " + n + "。png"; OutputStream出力=新しいFileOutputStream( "/ sdcard/Images /" + Image_name);これを使ってランダムな名前の画像を保存します。 – wolverine

関連する問題