Could not find <UINavigationButton ... in sorted view list with VoiceOver on

We have an app with a menu. There is a UIBarButton that can be used to open it. The top view opens to display the menu. When VoiceOver is enabled we get below error. I am assuming that the area that

2015-07-14 14:29:11.772 xxxxx[318:36506] |error| Could not find <UINavigationButton: 0x13e57db60; frame = (5 6; 40 30); opaque = NO; layer = <CALayer: 0x170435ee0>> in a list of sorted view [parent: <MobileUIApplication: 0x13e6023d0>] siblings (
    "<UITableView: 0x13e8ac800; frame = (0 20; 375 647); clipsToBounds = YES; opaque = NO; autoresize = RM+BM; autoresizesSubviews = NO; gestureRecognizers = <NSArray: 0x17444cb10>; layer = <CALayer: 0x170436560>; contentOffset: {0, 0}; contentSize: {375, 680}>"
).  If this happened right around a screen change, it might be okay, but otherwise this is probably a bug.
2015-07-14 14:29:11.775 xxxxx[318:36506] |error| Could not find <UINavigationButton: 0x13e57db60; frame = (5 6; 40 30); opaque = NO; layer = <CALayer: 0x170435ee0>> in a list of sorted view [parent: <MobileUIApplication: 0x13e6023d0>] siblings (
    "<UITableView: 0x13e8ac800; frame = (0 20; 375 647); clipsToBounds = YES; opaque = NO; autoresize = RM+BM; autoresizesSubviews = NO; gestureRecognizers = <NSArray: 0x17444cb10>; layer = <CALayer: 0x170436560>; contentOffset: {0, 0}; contentSize: {375, 680}>"
).  If this happened right around a screen change, it might be okay, but otherwise this is probably a bug.

      

I added UIAccessibilityPostNotification (UIAccessibilityLayoutChangedNotification, nil); but I am still getting the error.

Should I be worried and what should I do about it?

+3


source to share


1 answer


Used UIAccessibilityLayoutChangedNotification

to notify that the layout of an item or part UIView

has changed. Try to use UIAccessibilityScreenChangedNotification

.



If your scrolls are a tableView, you can use UIAccessibilityPostNotification(UIAccessibilityPageScrolledNotification, [self.tableView indexPathsForVisibleRows]);

so that every time the TableView scrolls, focus is on the first cell of your tableView.

+1


source







All Articles