Re: How to hide a table view column from Accessibility hierarchy?
Re: How to hide a table view column from Accessibility hierarchy?
- Subject: Re: How to hide a table view column from Accessibility hierarchy?
- From: Mike Engber <email@hidden>
- Date: Thu, 14 Jan 2010 17:02:13 -0800
Let me say this again, ignored UI elements are _not_ the same as
hidden UI elements. The fact that a UI element doesn't have any
children does not change what it means to be an ignored UI element.
On Jan 14, 2010, at 2:39 PM, Christiaan Hofman wrote:
The only bullet proof way to hide a UI Element is to:
- make sure its parent excludes it from its children
- hit testing doesn't report it
- focus testing doesn't report it
- ensure it not returned by any other attributes (e.g.
titleUIElement, ...)
None of this should be relevant, because ignored elements should
NEVER be returned by any of these. If some other element does this,
the implementation is buggy. Defensive programming is not supposed t
be a requirement (even if it is a good idea).
Ignored elements won't be returned by any of these - but that doesn't
mean the correct thing will happen.
Specifically, even you've decided to override accessibilityIsIgnored
you still have to ensure your object still properly implements the
accessibility protocol - accessibilityHitTest &
accessibilityFocusedUIElement might be called on your element and you
still have to make sure they return the correct thing.
The point I was making is that this is not always easy to do.
Returning the next unignored ancestor (what usually happens by
default) is often correct, but not always.
Currently, this is not easy to do because:
- Excluding from the parent's children might require subclassing
the parent which can sometimes be problematic.
No, it should work out-of=the-box, otherwise there's a bug you could
report to Apple.
It should not be expected that having a UI element return itself as
ignored is a way to hide it. That's not what ignored means. You might
be able to get away with using it that way in some circumstances, but
it's not what it's designed for.
As I said before, currently, the only proper way to hide a UI element
is to keep it out of the UI element hierarchy.
-ME
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Accessibility-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden