请帮助我,我做错了什么。使用UITableView在本地代码中单击随机崩溃
我从示例中使用BubbleCell
和BubbleElement
。 由于原因不明,该应用程序有时会以本机代码的形式崩溃。 如果我不使用DequeueReusableCell
,我会尝试一些方法来纠正这种情况,并且始终创建一个新的BubbleCell
。 此外,如果构造函数BubbleElement
传递字符串常量作为标题,而不是对象字段,则问题消失。
堆栈跟踪:http://pastebin.com/KAYzpHDk
的问题是更深比看起来。 你的建议没有帮助,应用程序仍然崩溃。
我做了一个单独的项目,只留下了显示问题所需的最少代码。 这个问题与System.Json有关......或许。
下面是该项目的档案: https://dl.dropbox.com/u/63074515/BubbleNativeCrash.zip
的动作序列: 1)打开项目 2)编译并没有调试(配置调试运行模拟器|)iPhoneSimulator) 3单击horse1在出现的列表中的第一个视图 4),滚动整个项目几次上下 5)在我的情况下,在这个阶段,我们崩溃...(堆栈跟踪:http://pastebin.com/KAYzpHDk)
如果不立即失效,您可以返回到联系人l ist,反之亦然,甚至几次。 失败的速度取决于聊天消息的数量。
现在有趣的部分。 问题完全消失(或者我不能重复它在一个合理的时间),如果在评论ChatViewController.cs线406和取消注释行407:
// string messageText = msg.MessageText ?? string.Empty;
string messageText = "Hello, World!!!";
也就是说,使传递到BubbleElement构造一个常量字符串。 之后,我想这个问题不会重复。
我试图离开一切,但删除与Json的工作 - 问题消失。 只有当BubbleElement从JsonValue(IM \ IMMessage.cs在第36行)读取一个字符串时才会出现问题。 即使在IMMessage.cs中为MessageText设置了一个常量字符串,问题也会消失。
我在做什么错? :)
p.s.对不起,我的英语......它由谷歌翻译。
谢谢......我真的很期待结果。我试图使用静态_cellCache,没有区别。 – xpg934 2012-07-18 14:38:15
原始的BubbleCell示例具有相同的问题(使用相同字符串的子集)。 Bug填入@ https://bugzilla.xamarin.com/show_bug.cgi?id=6177 – poupou 2012-07-18 14:43:17