android 存在数据库中的动态图片,如何读取出来,显示在ImageView中

android 存在数据库中的动态图片,如何读取出来,显示在ImageView中,第1张

实现的功能为从服务器获取图片数据,在布局页面上显示。由于图片的个数是不确定的,因此采用在布局页面中定义多个ImageView来显示图片是不合理的。

(一)首先定义布局

android:id="@+id/id_layout_movie"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

/>

(二)加载图片显示时获取到布局文件

RelativeLayout rl_Movie = (RelativeLayout) findViewById(R.id.id_layout_movie)

(三)依次循环服务器获取的图片数据,一张一张设置图片显示的位置

//newWidth为图片显示的宽度,newHeight为图片显示的高度

RelativeLayout.LayoutParams lp1 = new RelativeLayout.LayoutParams( newWidth, newHeight)

设置lp1.leftMargin和lp1.topMargin的值

(四)最后设置rl_Movie.addView(iv, lp1)将图片加入布局文件中

你先排查问题

1、compress的返回值是不是true

2、 数据库中的Blob是否有数据

3、从数据库中取出之后的byte[]里面是否有值,就是length是不是0

你的建议,使用jpg,PNG比JPG大很多,如果是大图超过了BLOB的限制,插入肯定会出问题。

另外质量使用50-80,100的质量是完全没用的,除非你做的是TV应用。否者APAD和PHONE的应用是不需要这么高的质量的

吐槽一下:

我从知乎、简书、CSDN、掘金、GitHub搜遍了,方法是有,可是那个软件收费。于是迫不得已,我就趁着月黑风高,翻过墙头,Google了一下,也是,找了老半天,要么是我关键词用的不对,要么就是那些大神们都不屑于写这些步骤,终于在我打算翻墙头回来睡觉的时候,在关闭随手打开一堆网页的最后一个的时候,I get it !

防砸声明:

前方多图,高能预警。

在开始正式步骤之前,先说明我的AndroidStudio版本是2018/7/9凌晨2点为止最新版:

AndroidStudio3.2-beta2

别介你用着其他版本整不出来,然后拿着砖头来砸我,我已经说明版本了,那时候我可是要抄起来我的拖鞋正当防卫的。

正文:

1.打开AndroidStudio3.0+,Open一个 *** 作数据库的项目

  这一步就不给图片了

2.运行项目->往数据库中插入数据。比如我这里注册一个用户:

3.然后返回AndroidStudio->View->Tool Windows->Device File Explorer(算是最关键的一步吧,如果你的AndroidStudio没有这个选项,那就凉了)

其实右下角有一个快捷键,可以直接打开

4.点击后会在右边出来一个框框,找到data->data->你自己项目的包名(可以从左边目录树java文件夹看到自己当前项目的包名)

注意是data->data!!

如果你打开的APP确实有执行过sqlite数据库相关 *** 作,但是就是没有看到database目录,你可以尝试右键包名,然后Synchronize一下,些许就出来了,如果还没有,那就想办法联系我,我倒要看看是个什么神奇的APP。

5. 右键找到的包名->Save As.. ->选择保存路径(我图个方便就先放到桌面了)->点击ok

6. 回桌面看一眼已经保存下来了(数据库就在database文件夹里面)

(现在已经完成保存的任务了,接下来是数据库查看内容)

(其实另外两个是没有必要存下来的,只需要保存下来database就行了,但也不能保存少了,如果只保存database里面的.db是看不到数据的,具体参考:另一篇文章)

(壁纸来源:http://www.runoob.com/w3cnote/17-wallpaper-for-programmer.html)

7.要想查看数据库内容,先打开我一起打包发给你的另一个文件夹:SQLiteStudio

(看清了,不是AndroidStudio)这里面有一个开源软件SQLiteStudio,打开。

SQLiteStudio下载链接:https://pan.baidu.com/s/1Ji6xkhYxrWP8pDk6qba_Og

8. 点击左上角数据库->添加数据库->点小文件夹图标->找到你刚才保存的路径下的database文件夹->右下角选择所有文件(这一步很重要)->选择你创建的数据库->点击ok

(其实,这个软件支持像PS打开图片那样,直接拖动.db文件到这个软件的图标,即可打开!)

9.如果不出意外SQLiteStudio的左边栏已经有数据库了->如果左边没有出现,那么可以点击查看->数据库->左边就会出来一个小边边。

10.然后就是双击数据库->双击Tables->双击你自己创建的表->你一看,空的,很是失望。->emmmm…Don't Panic!点击  数据->哇咔咔,出来了!!!

(如果你按照上面的 *** 作来到这里,发现还是没有数据,我猜是你少保存东西了。参考另一篇文章)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6780880.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-28
下一篇 2023-03-28

发表评论

登录后才能评论

评论列表(0条)

保存