mamad1994
دوشنبه 10 اسفند 1394, 15:41 عصر
دوستان برنامه زیر رو نوشتم که عکس از دیتابیس نشون بده تا روی دکمه کلیک می کنم از برنامه خارج می شه
ممنون می شم ببینید مشکلکش چیه
package com.example.udpshop;
import android.os.Bundle;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
public class Main extends Activity {
private databse db;
private EditText et;
private ImageView ie;
private Button bt;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
et=(EditText) findViewById(R.id.editText1);
ie=(ImageView) findViewById(R.id.imageView1);
bt=(Button) findViewById(R.id.btn1);
db=new databse(this);
db.database();
bt.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
db.open();
byte[] p=db.getpic(Integer.parseInt(et.getText().toString ()));
if(p!=null){
Bitmap bm=BitmapFactory.decodeByteArray(p, 0, p.length);
ie.setImageBitmap(bm);
}else{
}
db.close();
}
});
}
} package com.example.udpshop;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFacto ry;
import android.database.sqlite.SQLiteOpenHelper;
public class databse extends SQLiteOpenHelper {
private final String path="data/data/com.example.udpshop/databases/";
private final String name="database2.db";
public SQLiteDatabase mydb;
private final Context myContext;
public databse(Context context) {
super(context, "database2", null, 1);
myContext=context;
}
@Override
public void onCreate(SQLiteDatabase arg0) {
// TODO Auto-generated method stub
}
@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
// TODO Auto-generated method stub
}
public boolean database(){
boolean checkdb=checkdb();
if(checkdb){
}else{
this.getReadableDatabase();
try{
copydatabase();
}catch(IOException e){}}
return checkdb;
}
public void open(){
mydb=SQLiteDatabase.openDatabase(path+name, null, SQLiteDatabase.OPEN_READONLY);
}
public void close(){
mydb.close();
}
public boolean checkdb(){
SQLiteDatabase db=null;
try{
db=SQLiteDatabase.openDatabase(path+name, null, SQLiteDatabase.OPEN_READONLY);
}
catch(SQLException e){
}
return db!=null ? true:false;
}
public void copydatabase() throws IOException{
OutputStream myOut =new FileOutputStream(path+name);
byte[] buffer =new byte[1024];
int length;
InputStream myInput = myContext.getAssets().open(name);
while((length=myInput.read(buffer))>0){
myOut.write(buffer, 0, length);
}
myInput.close();
myOut.flush();
myOut.close();
}
public byte[] getpic(int id){
Cursor ce=mydb.rawQuery("select * from tbl_content where id="+id, null);
ce.moveToFirst();
byte[] s;
s=ce.getBlob(2);
return s;
}
}
139341
ممنون می شم ببینید مشکلکش چیه
package com.example.udpshop;
import android.os.Bundle;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
public class Main extends Activity {
private databse db;
private EditText et;
private ImageView ie;
private Button bt;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
et=(EditText) findViewById(R.id.editText1);
ie=(ImageView) findViewById(R.id.imageView1);
bt=(Button) findViewById(R.id.btn1);
db=new databse(this);
db.database();
bt.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
db.open();
byte[] p=db.getpic(Integer.parseInt(et.getText().toString ()));
if(p!=null){
Bitmap bm=BitmapFactory.decodeByteArray(p, 0, p.length);
ie.setImageBitmap(bm);
}else{
}
db.close();
}
});
}
} package com.example.udpshop;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFacto ry;
import android.database.sqlite.SQLiteOpenHelper;
public class databse extends SQLiteOpenHelper {
private final String path="data/data/com.example.udpshop/databases/";
private final String name="database2.db";
public SQLiteDatabase mydb;
private final Context myContext;
public databse(Context context) {
super(context, "database2", null, 1);
myContext=context;
}
@Override
public void onCreate(SQLiteDatabase arg0) {
// TODO Auto-generated method stub
}
@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
// TODO Auto-generated method stub
}
public boolean database(){
boolean checkdb=checkdb();
if(checkdb){
}else{
this.getReadableDatabase();
try{
copydatabase();
}catch(IOException e){}}
return checkdb;
}
public void open(){
mydb=SQLiteDatabase.openDatabase(path+name, null, SQLiteDatabase.OPEN_READONLY);
}
public void close(){
mydb.close();
}
public boolean checkdb(){
SQLiteDatabase db=null;
try{
db=SQLiteDatabase.openDatabase(path+name, null, SQLiteDatabase.OPEN_READONLY);
}
catch(SQLException e){
}
return db!=null ? true:false;
}
public void copydatabase() throws IOException{
OutputStream myOut =new FileOutputStream(path+name);
byte[] buffer =new byte[1024];
int length;
InputStream myInput = myContext.getAssets().open(name);
while((length=myInput.read(buffer))>0){
myOut.write(buffer, 0, length);
}
myInput.close();
myOut.flush();
myOut.close();
}
public byte[] getpic(int id){
Cursor ce=mydb.rawQuery("select * from tbl_content where id="+id, null);
ce.moveToFirst();
byte[] s;
s=ce.getBlob(2);
return s;
}
}
139341