2013-08-29 2 views
1

에 저장됩니다.쇼 이미지 뷰 내가 데이터베이스에 저장된 경로를 가지고 있고, 그 경로를 사용하여 이미지 뷰의 이미지를 보여주고 싶은, 내가 이미지 뷰에 이미지를 표시 할 데이터베이스

String path = Utility.GetColumnValue(testdata, "path"); 

다음

ImageView img = (ImageView) findViewById(R.id.imageview); 
img.setImageURI(Uri.parse(path)); 

하지만 내 응용 프로그램의 get 추락 일도 잘못된

+0

다음 file.getPath을 로그 –

+0

먼저 확인 파일 존재를 붙여주십시오 시도 할 수 있습니다() –

답변

2

당신은 그

Bitmap bmp = BitmapFactory.decodeFile(img_path); 
    img.setImageBitmap(bmp); 

같은 경로에서 비트 맵을 얻을 수 있습니다 또는이 하나

String path= "@drawable/myresource.png"; 
int imageResource = getResources().getIdentifier(path, null, getPackageName()); 
Drawable res = getResources().getDrawable(imageResource); 
img.setImageDrawable(res); 
1

이 시도이 경로의 형태로 >>/드로어 블/사진 이미지 나에게의 값을 반환 :

ImageView img = (ImageView) findViewById(R.id.imageview); 
InputStream inputStream = getClass().getResourceAsStream(path); 
img.setImageDrawable(Drawable.createFromStream(inputStream, "")); 
0
Bitmap bmp=BitmapFactory.decodeFile(path); 
img.setImageBitmap(bmp); 
0
package com.example.database_db_hari; 

import java.io.ByteArrayOutputStream; 

import android.app.Activity; 
import android.content.ContentValues; 
import android.database.Cursor; 
import android.database.sqlite.SQLiteDatabase; 
import android.graphics.Bitmap; 
import android.graphics.BitmapFactory; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.ImageView; 
import android.widget.Toast; 

public class MainActivity extends Activity { 

    ImageView iv; 

    Button b1, b2; 

    byte[] img1, image; 

    Bitmap b; 

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

     b1 = (Button) findViewById(R.id.btn_activity_main_open); 

     b2 = (Button) findViewById(R.id.btn_activity_main_show); 

     iv = (ImageView) findViewById(R.id.imageView1); 

     b1.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View arg0) { 
       // TODO Auto-generated method stub 

       DataBaseHub dbh = new DataBaseHub(MainActivity.this); 

       SQLiteDatabase db = dbh.getWritableDatabase(); 

       ContentValues cv = new ContentValues(); 

       // convert from bitmap to byte array 

       b = BitmapFactory.decodeResource(getResources(), 

       R.drawable.aass); 
       ByteArrayOutputStream stream = new ByteArrayOutputStream(); 

       b.compress(Bitmap.CompressFormat.JPEG, 100, stream); 

       byte[] img1 = stream.toByteArray(); 

       cv.put(DataBaseHub.PHOTO, img1); 

       db.insert(DataBaseHub.TABLENAME, null, cv); 

       Toast.makeText(MainActivity.this, "Insert Success", 
         Toast.LENGTH_SHORT).show(); 
      } 

     }); 

     b2.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View arg0) { 
       // TODO Auto-generated method stub 

       DataBaseHub dbh = new DataBaseHub(MainActivity.this); 

       SQLiteDatabase db = dbh.getReadableDatabase(); 

       // convert from byte array to bitmap 

       Cursor c = db.query(DataBaseHub.TABLENAME, null, null, null, 
         null, null, null); 

       if (c.moveToFirst()) { 

        do { 

         image = c.getBlob(c.getColumnIndex("photo")); 

        } while (c.moveToNext()); 

       } 

       Bitmap bmp = BitmapFactory.decodeByteArray(image, 0, 
         image.length); 

       iv.setImageBitmap(bmp); 

       Toast.makeText(MainActivity.this, "Show Success", 
         Toast.LENGTH_SHORT).show(); 

      } 
     }); 
    } 

} 
+0

이 코드는 제 이클립스에서 제대로 작동합니다 ... – Harieswaran

관련 문제