Instance Method インスタンスメソッド

accessibilitySetOverrideValue(_:forAttribute:)

Overrides the specified attribute in the receiver or adds it if it does not exist, and sets its value to the specified value.

Declaration 宣言

func accessibilitySetOverrideValue(_ value: Any?, 
                      forAttribute attribute: NSAccessibility.Attribute) -> Bool

Parameters パラメータ

value

The attribute value to be set.

attribute

The name of the attribute. See Constants for lists of attribute names.

Return Value 戻り値

true if the override was successful; otherwise, false.

Discussion 解説

This method is for changing the set of attributes on an instance, as an alternative to subclassing.

This method works only on objects whose class already implements the NSAccessibility protocol. If the specified attribute is already supported by the object, the value specified by this method wins.

If the specified attribute does not exist, it is created outside the NSAccessibility protocol, so accessibilityAttributeNames still returns the old list, which does not contain the new attribute. Likewise, accessibilityAttributeValue does not return attributes created by the override process nor does it return their overridden values.

The values of overridden attributes are not settable by accessibility clients.

If you need to undo the effect of using this method, call it again, passing nil for the value.

Ensure that you invoke this method on the actual object that represents the user interface element. For example, for NSButton, use the underlying NSButtonCell object. NSButton itself is ignored by accessibility.

This method works only on an object representing a single user interface element. So, for example, you cannot use it when a single object represents multiple user interface elements, as with NSSegmentedCell, which has only a single object but provides user interface elements for each segment.

See Also 参照

Deprecated 非推奨