UIView$Methods extension

on

Properties

bounds → CGRect

Available on UIView, provided by the UIView$Methods extension

bounds
no setter
canBecomeFocused bool

Available on UIView, provided by the UIView$Methods extension

Indicates whether or not this item is currently allowed to become focused. Returning NO restricts the item from being focusable, even if it is visible in the user interface. For example, UIControls return NO if they are disabled.
no setter
center ↔ CGPoint

Available on UIView, provided by the UIView$Methods extension

center
getter/setter pair
collisionBoundingPath UIBezierPath

Available on UIView, provided by the UIView$Methods extension

The path must represent a convex polygon with counter clockwise winding and no self intersection. The point (0,0) in the path corresponds to the dynamic item's center.
no setter
collisionBoundsType UIDynamicItemCollisionBoundsType

Available on UIView, provided by the UIView$Methods extension

The collision type represents how the dynamics system will evaluate collisions with respect to the dynamic item. defaults to UIDynamicItemCollisionBoundsTypeRectangle
no setter
coordinateSpace UICoordinateSpace

Available on UIView, provided by the UIView$Methods extension

The coordinate space of the focus items contained in this container. The focus items returned by focusItemsInRect: should report their frames in this coordinate space. If you are implementing this protocol, you may find it convenient to return the UIScreen as your coordinate space, and ensure that your contained items report their frames in screen space. Similarly, you might find that your focus items' containing UIView or UIWindow is the most convenient coordinate space to use. You may also choose to implement your own object that conforms to UICoordinateSpace, if that is the most natural solution for your architecture.
no setter
effectiveUserInterfaceLayoutDirection UIUserInterfaceLayoutDirection

Available on UIView, provided by the UIView$Methods extension

effectiveUserInterfaceLayoutDirection
no setter
focused bool

Available on UIView, provided by the UIView$Methods extension

isFocused
no setter
focusEffect UIFocusEffect?

Available on UIView, provided by the UIView$Methods extension

Describes a visual effect to apply when this item is focused. If this property is nil no effect will be applied when this view becomes focused.
getter/setter pair
focusGroupIdentifier ↔ NSString?

Available on UIView, provided by the UIView$Methods extension

The identifier of the focus group that this view belongs to. If this is nil, subviews inherit their superview's focus group.
getter/setter pair
focusGroupPriority int

Available on UIView, provided by the UIView$Methods extension

The priority this item has in its focus group. The higher the priority, the more likely it is to get picked when focus moves into this group. Note: this method can only be used to increase an item's priority, not decrease it. For example if an item is currently selected, the actual priority of this item will be determined by MAX(focusGroupPriority, UIFocusGroupPrioritySelected).
getter/setter pair
focusItemContainer UIFocusItemContainer?

Available on UIView, provided by the UIView$Methods extension

The container of any child focus items in this focus environment, or nil if no container exists.
no setter
frame → CGRect

Available on UIView, provided by the UIView$Methods extension

The geometric frame of this item, represented in the coordinateSpace of the UIFocusItemContainer in which it is contained.
no setter
isTransparentFocusItem bool

Available on UIView, provided by the UIView$Methods extension

If this returns YES, the focus item is considered transparent in terms of occlusion. Items that are behind it are focusable. This value is ignored when the item is focusable, in which case the item is never considered transparent.
no setter
layer CALayer

Available on UIView, provided by the UIView$Methods extension

layer
no setter
parentFocusEnvironment UIFocusEnvironment?

Available on UIView, provided by the UIView$Methods extension

The parent focus environment of this environment, or nil if no parent exists. NOTE: If you implement this method, you must return a non-nil value for parent focus environment, otherwise your focus environment will not participate in focus interactions.
no setter
preferredFocusedView UIView?

Available on UIView, provided by the UIView$Methods extension

preferredFocusedView
no setter
preferredFocusEnvironments → NSArray

Available on UIView, provided by the UIView$Methods extension

The preferred focus environments define where to search for the default focused item in an environment, such as when focus updates programmatically. Starting from the target environment, each preferred focus environment is recursively searched in the order of the array until an eligible, focusable item is found. Preferred focus environments can include focusable and non-focusable items, in addition to non-item environments. Returning an empty array is equivalent to returning an array containing only 'self'.
no setter
semanticContentAttribute UISemanticContentAttribute

Available on UIView, provided by the UIView$Methods extension

semanticContentAttribute
getter/setter pair
tag int

Available on UIView, provided by the UIView$Methods extension

tag
getter/setter pair
traitCollection UITraitCollection

Available on UIView, provided by the UIView$Methods extension

traitCollection
no setter
transform CGAffineTransform

Available on UIView, provided by the UIView$Methods extension

transform
getter/setter pair
userInteractionEnabled bool

Available on UIView, provided by the UIView$Methods extension

isUserInteractionEnabled
getter/setter pair

Methods

actionForLayer(CALayer layer$1, {required NSString forKey}) CAAction?

Available on UIView, provided by the UIView$Methods extension

actionForLayer:forKey:
convertPoint(CGPoint point, {required UICoordinateSpace toCoordinateSpace}) → CGPoint

Available on UIView, provided by the UIView$Methods extension

convertPoint:toCoordinateSpace:
convertPoint$1(CGPoint point, {required UICoordinateSpace fromCoordinateSpace}) → CGPoint

Available on UIView, provided by the UIView$Methods extension

convertPoint:fromCoordinateSpace:
convertRect(CGRect rect, {required UICoordinateSpace toCoordinateSpace}) → CGRect

Available on UIView, provided by the UIView$Methods extension

convertRect:toCoordinateSpace:
convertRect$1(CGRect rect, {required UICoordinateSpace fromCoordinateSpace}) → CGRect

Available on UIView, provided by the UIView$Methods extension

convertRect:fromCoordinateSpace:
didHintFocusMovement(UIFocusMovementHint hint) → void

Available on UIView, provided by the UIView$Methods extension

Called whenever this focus item is hinting to the user a focus movement might occur. The provided object is mutated by the focus engine whenever the user's finger moves.
didUpdateFocusInContext(UIFocusUpdateContext context, {required UIFocusAnimationCoordinator withAnimationCoordinator}) → void

Available on UIView, provided by the UIView$Methods extension

Called when the screen’s focused item has been updated to a new item. Use the animation coordinator to schedule focus-related animations in response to the update.
displayLayer(CALayer layer$1) → void

Available on UIView, provided by the UIView$Methods extension

displayLayer:
drawLayer(CALayer layer$1, {required Pointer<CGContext> inContext}) → void

Available on UIView, provided by the UIView$Methods extension

drawLayer:inContext:
encodeWithCoder(NSCoder coder) → void

Available on UIView, provided by the UIView$Methods extension

encodeWithCoder:
focusItemsInRect(CGRect rect) → NSArray

Available on UIView, provided by the UIView$Methods extension

Returns an array of all focus items within this container that intersect with the provided rect. rect is expressed in coordinateSpace.
init() UIView

Available on UIView, provided by the UIView$Methods extension

init
initWithCoder(NSCoder coder) UIView?

Available on UIView, provided by the UIView$Methods extension

initWithCoder:
initWithFrame(CGRect frame) UIView

Available on UIView, provided by the UIView$Methods extension

initWithFrame:
layerWillDraw(CALayer layer$1) → void

Available on UIView, provided by the UIView$Methods extension

layerWillDraw:
layoutSublayersOfLayer(CALayer layer$1) → void

Available on UIView, provided by the UIView$Methods extension

layoutSublayersOfLayer:
setNeedsFocusUpdate() → void

Available on UIView, provided by the UIView$Methods extension

Marks this environment as needing a focus update, which if accepted will attempt to reset focus to this environment, or one of its preferred focus environments, on the next update cycle. If this environment does not currently contain the focused item, then calling this method has no effect. If a parent of this environment is also requesting focus, then this environment's request is rejected in favor of the parent's. NOTE: If you provide your own implementation, it must call [[UIFocusSystem focusSystemForEnvironment:self] requestFocusUpdateToEnvironment:self];
shouldUpdateFocusInContext(UIFocusUpdateContext context) bool

Available on UIView, provided by the UIView$Methods extension

Asks whether the system should allow a focus update to occur.
soundIdentifierForFocusUpdateInContext(UIFocusUpdateContext context) → NSString?

Available on UIView, provided by the UIView$Methods extension

Specifies an identifier corresponding to a sound that should be played for a focus update. Return UIFocusSoundIdentifierNone to opt out of sounds, UIFocusSoundIdentifierDefault for the system default sounds, a previously registered identifier for a custom sound, or nil to defer the decision to the parent.
traitCollectionDidChange(UITraitCollection? previousTraitCollection) → void

Available on UIView, provided by the UIView$Methods extension

! To be overridden as needed to provide custom behavior when the environment's traits change.
updateFocusIfNeeded() → void

Available on UIView, provided by the UIView$Methods extension

Forces focus to be updated immediately. If there is an environment that has requested a focus update via -setNeedsFocusUpdate, and the request was accepted, then focus will be updated to that environment or one of its preferred focus environments. NOTE: If you provide your own implementation, it must call [[UIFocusSystem focusSystemForEnvironment:self] updateFocusIfNeeded];.