Posts

Post not yet marked as solved
0 Replies
383 Views
My iOS UITableView based app is working fine until the device sleeps. If the device/app sleeps and then is woken, then the app display is initially fine but as soon as a cell is dequeued, for example because of a scroll or otherwise, the new cell returned is not fully initialised, as in initWithStyle:reuseIdentifier: does not appear to have been properly executed. elements added are still their, but they have lost their positions. This is NOT a problem before the device slept. Am I missing something obvious?
Posted
by AjohnB.
Last updated
.
Post not yet marked as solved
2 Replies
451 Views
Obviously one could put an Xcode project on an iCloudDrive replicated folder. And obviously one can be working in Xcode on a project that itself saves documents to iCloud Drive. But why is there an option for Xcode at the MacOS Settings > Apple ID> iCloud Drive Options Button > Documents Tab > Xcode. What does this cause to be stored where, and if appropriate, why? Im using latest Catalina and Xcode 11.5
Posted
by AjohnB.
Last updated
.
Post marked as solved
3 Replies
2.9k Views
On iOS13 snd iPadOS on a call to visibleCells on a UITableView ( on code which works fine on iOS9 to iOS12 ) I get an exception with the messageAttempted to access the table view's visibleCells while they were in the process of being updated, which is not allowed.Searching on the web gives me no hits for this exact message, so I suspect the message itself is new or changed.Now the general gist of the message is fairly clear, but the specifics and but how one is expected to avoid this in a multithreaded application are far from clear.For example ...what sort of changes qualify,For example ... the user may rotate the device, a redisplay may be caused by incoming data. Are these now to be expected to crash your application?Maybe there is a new threading model / usage requirement that I don't know about, yet.Synchronising on the UITableView itself doesn't help.What am I missingAnd Yes, I can avoid the problem by catching the error and backing off until I succeed. But the hit on performance is eyewatering. And it's horrible.
Posted
by AjohnB.
Last updated
.
Post marked as solved
18 Replies
24k Views
On iPadOS and iOS13 on a call to visibleCells on a UITableView ( on code which works fine on iOS9 to iOS12 ) I get an exception with the messageAttempted to access the table view's visibleCells while they were in the process of being updated, which is not allowed.Searching on the web gives me no hits for this exact message, so I suspect the message itself is new or changed.Now the general gist of the message is fairly clear, but the specifics and but how one is expected to avoid this in a multithreaded application are far from clear.For example ...what sort of changes qualify,For example ... the user may rotate the device, a redisplay may be caused by incoming data. Are these now to be expected to crash your application?Maybe there is a new threading model / usage requirement that I don't know about, yet.Synchronising on the UITableView itself doesn't help.What am I missingAnd Yes, I can avoid the problem by catching the error and backing off until I succeed. But the hit on performance is eyewatering. And it's horrible.
Posted
by AjohnB.
Last updated
.