IOS UITableView reloadData not respone!
新近接触IOS的开发,觉得IPAD比较大,容易使用,于是想开发一个小小程序来记录篮球的训练情况,结果出现问题,解决之路破费一份力气。记录如下,算是IOS入门之旅。
1,出现exc_bad_access。除了模拟器的键盘上有一个控制关闭能解决大量的文本框输入时出现的该问题外,还有很多地方会出现。网上的资料显示为,你想引用的对象已经释放。与VS中的“未将引用的对象应用到对象的实例”有异曲同工之妙。作为新手,一开始就接受什么ipad资源要及时释放,才导致这个后果。其实,我并不知道某些资源是否应该马上释放。所以,我的解决方案是将大量的release注释掉,果然这个错误就出现得很少了。
2,困扰我好多天的问题,就是UITableView reloaddata并不更新的问题,。我采用sqlite3数据库来保存数据,在一个tab bar上切换进行数据录入。通过调试发现,数据已经更新在数据库中,但这个tableview死活不更新。开始时以为是数据的缓存,但马上用语句读出数据,显示数据是更新的。网上也有资料显示说是否xib文件因为未保存导致,后实测不是。有资料显示这个东东与微软的VS中的窗口显示类似:你只能在mainthread中更新UI控件。于是我找到语句,performSelectorOnMainThread:@selector(reloaddata) withObject:nil waitUntilDone:YES .这样好像能解决问题,但datasource似乎是空的,需要重新加载一次数据。
网上这个不更新的问题有很多,看来不是偶发事故,也许是俺未入门的缘故,记录在案。