0

私はこのチュートリアルに従います

データベースに同じ画像をもう一度追加します n もう一度 ギャラリーを参照して自分の選択した新しい画像を追加し、アップロードしてデータベースに保存します

コードの出力は次のようになります

main.xmlという名前のbrowsebuttonに新しいボタンを追加します。set はギャラリーを開く機能ですが、ブラウズ画像をデータベースにアップロードするにはどうすればよいですか? 助けてくださいplzギャラリーから自分の画像を追加したいデータベースに私のギャラリー画像を追加するコードはどうすればいいですか??

   import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.ListView;

 public class SQLiteDemoActivity extends Activity {
private static final int SELECT_PICTURE = 1;
ArrayList<Contact> imageArry = new ArrayList<Contact>();
ContactImageAdapter adapter;
Button BrowseButton;

 /** Called when the activity is first created. */
 @Override
 public void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.main);

 DataBaseHandler db = new DataBaseHandler(this);
//get image from drawable
Bitmap image = BitmapFactory.decodeResource(getResources(),
R.drawable.facebook);


BrowseButton=(Button)findViewById(R.id.BrowseButton);



BrowseButton.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
    // TODO Auto-generated method stub
     // in onCreate or any event where your want the user to
    // select a file
    Intent intent = new Intent();
    intent.setType("image/*");
    intent.setAction(Intent.ACTION_GET_CONTENT);
    startActivityForResult(Intent.createChooser(intent,
            "Select Picture"), SELECT_PICTURE);

 }
});




//convert bitmap to byte
 ByteArrayOutputStream stream = new ByteArrayOutputStream();
 image.compress(Bitmap.CompressFormat.JPEG, 100, stream);
 byte imageInByte[] = stream.toByteArray();
/**
* CRUD Operations
* */
//Inserting Contacts
Log.d("Insert: ", "Inserting ..");
db.addContact(new Contact("FaceBook", imageInByte));
//display main List view bcard and contact name

//Reading all contacts from database
List<Contact> contacts = db.getAllContacts();
for (Contact cn : contacts) {
String log = "ID:" + cn.getID() + " Name: " + cn.getName()
+ " ,Image: " + cn.getImage();

//Writing Contacts to log
Log.d("Result: ", log);
 //add contacts data in arrayList
imageArry.add(cn);

}
adapter = new ContactImageAdapter(this, R.layout.screen_list,
imageArry);
ListView dataList = (ListView) findViewById(R.id.list);
dataList.setAdapter(adapter);
}
}
4

1 に答える 1

0

データベースに画像を保存しようとしないでください。画像を外部ストレージに保存し、それらへのパスをデータベースに保存します。

于 2012-12-13T09:47:21.277 に答える