查看: 3096|回复: 6

[已经解决] 关于disposed bitmap 的问题

[复制链接]
梦石
0
星屑
3293
在线时间
1463 小时
注册时间
2014-8-9
回帖
308
发表于 2016-9-30 03:28:34 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
本帖最后由 huajinyu123 于 2016-9-30 04:29 编辑

最近工程老是发生RGSSError disposed bitmap的问题,有时会发生有时不会发生
这种问题该如何解决?

rect = Rect.new(0, 0, @items[a].width, @items[a].height)

老是这行出现这个问题,但我看不出错误来
到底是什么原因导致的?

------------------------------------------------------------------------------------------------
我发现是@item[a].width出了问题,@item[a] !=nil,也确实是图片,但它的width就是出不来
这是为什么?

我发现换张图就好了,但这两张图一模一样啊,就是复制黏贴的
谁来说说是怎么一回事?
梦石
0
星屑
9557
在线时间
5074 小时
注册时间
2013-6-21
回帖
3459

开拓者贵宾剧作品鉴家

发表于 2016-9-30 09:10:38 | 显示全部楼层
disposed bitmap 的含义是 Bitmap 对象被释放。对已经被释放的对象,不能对其进行操作,也不能获取它的width等属性。

不等于 nil 并不能说明什么,你需要检查这个 Bitmap 是否已经被释放了。
[pre lang="Ruby"]@item[a].disposed?[/pre]

出现这种情况的原因是脚本没写好,你看看在其他地方有没有对这里位图释放的操作。一般来讲一个图片在未使用完毕时不应该释放。

点评

我要认可答案  发表于 2016-10-1 03:56
不好说,如果是共用一个变量的话是有关系的。建议贴出来你的脚本。  发表于 2016-9-30 16:40
对,确实被释放了,但是释放的地点是其他的Scene,和这个scene有关系吗?  发表于 2016-9-30 16:26
回复

使用道具 举报

梦石
0
星屑
3293
在线时间
1463 小时
注册时间
2014-8-9
回帖
308
 楼主| 发表于 2016-9-30 17:45:28 | 显示全部楼层
我把那个scene的dispose命令去掉了,就好了

# def dispose
#   super
#   if @icon != nil
     # p @icon
     # @icon.dispose
#     @icon = nil
#   end
# end

有个 @icon.dispose  其中有张图片和@items[a]中的某一张是一张图片,这是不是问题所在?

点评

很有可能  发表于 2016-9-30 22:11
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部