#java #android #sqlite
#java #Android #sqlite
Вопрос:
Я новичок в Android. Я только что создал AVD с 256 МБ Android-SDcard в нем в Android 2.1. И я вставил в него два изображения. Я сделал это, используя перспективу DDMS. И изображения теперь хранятся в папке 100ANDRO в папке DCIM SDcard. Теперь я хочу создать приложение, которое позволяет пользователю выбирать изображения путем просмотра папок и сохранять соответствующее изображение в базе данных Android-sqlite.
Может кто-нибудь помочь мне найти подходящий метод для этого? Заранее спасибо.
Ответ №1:
Я нашел один метод для этого.
Я создал кнопку для ЗАГРУЗКИ и для действия щелчка я установил вот так.
upload.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v) {
Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
photoPickerIntent.setType("image/*");
startActivityForResult(photoPickerIntent, 1);
}
});
И я переопределил этот метод вместе с тем же классом, что и ниже.
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
switch (requestCode) {
case 1:
{
if (resultCode == RESULT_OK)
{
Uri photoUri = data.getData();
if (photoUri != null)
{
try {
String[] filePathColumn = {MediaStore.Images.Media.DATA};
Cursor cursor = getContentResolver().query(photoUri, filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String filePath = cursor.getString(columnIndex);
cursor.close();
Bitmap bitmap = BitmapFactory.decodeFile(filePath);
imgView.setImageBitmap(bitmap);
int size = bitmap.getWidth() * bitmap.getHeight();
ByteArrayOutputStream out = new ByteArrayOutputStream(size);
bitmap.compress(Bitmap.CompressFormat.PNG, 100, out);
try {
out.flush();
out.close();
} catch (IOException e) {
e.printStackTrace();}
String bb = out.toString();
byte[] x = out.toByteArray();
image_value.setTag(x);
image_value.setText(filePath);
}catch(Exception e)
{}
}
}
}
Здесь image_value представляет скрытое текстовое представление в файле xml.
Я передал значение местоположения изображения и байты в качестве значения и тега текстового представления.
И позже я сохранил эти байты в базе данных для последующего отображения. Работает нормально.
Спасибо всем.