android SQLite 图片是以图片的存储路径的方式存储的,怎样读取并显示在GridView中

skywxx 发布于 2012/08/01 19:51
阅读 12K+
收藏 1
如题,谢谢帮助!!!
加载中
0
skywxx
skywxx

String picPath = c.getString(c.getColumnIndex("pic"));

BitmapFactory.Options options = new BitmapFactory.Options();

options.inSampleSize = 2;

Bitmap bitmap = BitmapFactory.decodeFile(picPath, options);

CheckMenu cm = new CheckMenu(); 

cm.setBm(bitmap);

list.add(cm);//list 是这样定义的List list = new ArrayList();

//在GridView的getview(),里我自定义了一个布局

imageView = (ImageView) v.findViewById(R.id.diancai_view_ImageView01);

CheckMenu cm = (CheckMenu) list.get(position);

imageView.setImageBitmap(cm.getBm());

请问这几行代码有问题吗? 为什我我运行就是现实不出来图片,而且没有报错信息!

侯林宏
侯林宏
为空就是你对象没取到值。取对象时最好不要使用全局的。当需要对象的值的时候再重新获取。
skywxx
skywxx
回复 @侯林宏 : 你说的很对,我打印了一下bitmap 和cm.getBm(),都是null,但是存储路径是取出来了,picPath不是空的,是c盘我的路径名我取到String picPath = c.getString(c.getColumnIndex("pic"));怎样把这个路径下的图片显示出来啊?你能具体写一下吗?已经弄了好几天了,现在已经晕了我
侯林宏
侯林宏
你new一个空的对象添加进去。你要确保你的对象是有值。而且是正确的值才行呀
0
华兹格
华兹格

  1. 得到图片路径,转化为文件流
  2. 调用Bitmap.BitmapFactory(InputStream is)方法返回一个Bitmap对象

         3.显示

skywxx
skywxx
怎样把路径转化为文件流啊?
skywxx
skywxx
好的,我试试,谢谢啊
0
华兹格
华兹格

这个有多种方法的。。看了API文档,发现用一句话也是可以的~~嘿嘿。。

你查查BitmapFactory这个类,它有方法的,有些封装的很好,可以直接用!

static Bitmap decodeStream(InputStream is)
static Bitmap decodeFile(String pathName)
0
华兹格
华兹格
2个你可以用的方法:

decodeFile(String pathName)
0
华兹格
华兹格

推荐用第二个

 

0
skywxx
skywxx
int actual_image_column_index = c.getColumnIndexOrThrow("pic");//pic里是我从SQLite中读取的存   //储路径,例如其中一个图片的路径C:\Users\zll\Pictures\WirelessOrder\宫保鸡丁.jpg
String picPath = c.getString(actual_image_column_index);
File file = new File(picPath);
Bitmap bitmap = null;
bitmap=BitmapFactory.decodeFile(picPath);
imageView.setImageBitmap(bitmap);
这种写法有错误吗?为什么还是现实不出来呢?我打印了一下bitmap,为null。


0
skywxx
skywxx

引用来自“hanzhankang”的答案

推荐用第二个

 

int actual_image_column_index = c.getColumnIndexOrThrow("pic");//pic里是我从SQLite中读取的存   //储路径,例如其中一个图片的路径C:\Users\zll\Pictures\WirelessOrder\宫保鸡丁.jpg
String picPath = c.getString(actual_image_column_index);
File file = new File(picPath);
Bitmap bitmap = null;
bitmap=BitmapFactory.decodeFile(picPath);
imageView.setImageBitmap(bitmap);
这种写法有错误吗?为什么还是现实不出来呢?我打印了一下bitmap,为null。
0
华兹格
华兹格

图片的路径C:\Users\zll\Pictures\WirelessOrder\宫保鸡丁.jpg

你确定是搞Android开发的吗?这样的路径会出现在Android系统中吗????

应该是存储在 SDCard 中的路径吧~~~

0
skywxx
skywxx
是的,客户端的数据是从服务器端读取的,客户端是用android写的,服务器端存储把图片的存储路径存储在mysql中,客户端读取之后保存在SQLite中
0
skywxx
skywxx

引用来自“hanzhankang”的答案

图片的路径C:\Users\zll\Pictures\WirelessOrder\宫保鸡丁.jpg

你确定是搞Android开发的吗?这样的路径会出现在Android系统中吗????

应该是存储在 SDCard 中的路径吧~~~

是的,客户端的数据是从服务器端读取的,客户端是用android写的,服务器端存储把图片的存储路径存储在mysql中,客户端读取之后保存在SQLite中
返回顶部
顶部