我有一个UISwitch,可以在切换值时在其上方更改UILabel的文本。每隔一段时间(大约2%的时间)文本不会更改。标签的文本将保存到文本文件,因此我需要准确性。由于这个问题如此间歇,因此很难调试。我以为主线程可能被阻塞了,但是该应用程序根本没有使用任何资源。有任何想法吗?提前致谢!
这是IBAction的一些代码。
- (IBAction)type:(id)sender {
if ([sender isOn]) {
//change label
self.typeLabel.text = @"ventless";
//change property of string to be saved into text file
self.typeString = @"ventless";
}
else{
self.typeLabel.text = @"standard";
self.typeString = @"standard";
}
最佳答案
据我所知,如果您写入文件,则需要查看如何存储此信息。使用所提供的信息,没有任何问题,但是考虑当前的I / O操作不是一件大事,而是取决于有多少数据(如果要在写入之前进行解析的话)以及需要采取的更多详细信息等可能会延迟用户界面的更新。您始终可以打开仪器并检查出了什么问题,这将说明您在I / O操作中花费的内存量和时间。我建议使用UnitTesting做一个测试,读/写100次,看看会发生什么。在这种情况下,必须使用工具,并且应该给您提供备用信息,以了解您的应用程序中发生了什么。
关于ios - UISwitches滞后,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24235058/