2

当用户单击我的应用程序中的按钮时,他必须能够从内部存储(sd 卡或平板电脑/手机内存)中选择图像。然后,我希望将此图像存储在 SQLite 数据库中。

所以有三个问题:

  • 如何向用户显示图库或文件资源管理器,以便他可以导航和选择图像?
  • 应用程序如何知道选择了哪个图像?
  • 我的应用程序如何将图像存储在数据库中(BLOB 数据)?
4

1 回答 1

1

好吧,正如 Lingviston 已经指出的那样。您可以从这里实现从图库中挑选图像。

至于存储图像,我将稍微编辑链接中的代码。

而不是这个:

ImageView imageView = (ImageView) findViewById(R.id.imgView);
        imageView.setImageBitmap(BitmapFactory.decodeFile(picturePath));

我要将选定的图像存储在Bitmap.

ImageView imageView = (ImageView) findViewById(R.id.imgView);
Bitmap mBitmap = BitmapFactory.decodeFile(picturePath);
        imageView.setImageBitmap(mBitmap);

现在要在 android 中存储为BLOB类型,您需要将位图转换为字节,然后将字节数组存储在 sqlite 数据库中。

                ByteArrayOutputStream stream = new ByteArrayOutputStream();
                mBitmap.compress(Bitmap.CompressFormat.PNG, 100, stream);
                byte[] imageInByte = stream.toByteArray();

现在您只需要传递imageInByte到存储在SQLite数据库中。

附带说明一下,这两个答案都已经在整个互联网上可用,并且可以StackOverflow单独使用,您只需将 2 和 2 放在一起即可。在发布问题之前,请尝试彻底搜索。

于 2013-06-16T03:52:33.470 回答