pub struct DefaultFerroViewController { /* private fields */ }Implementations§
Source§impl DefaultFerroViewController
impl DefaultFerroViewController
Sourcepub fn new(mtm: MainThreadMarker) -> Retained<Self> ⓘ
pub fn new(mtm: MainThreadMarker) -> Retained<Self> ⓘ
Creates a view controller.
Sourcepub fn controller(&self) -> Rc<dyn IFerroViewController>
pub fn controller(&self) -> Rc<dyn IFerroViewController>
The view controller as the view of the port sees it.
Methods from Deref<Target = UIViewController>§
pub fn hidesBottomBarWhenPushed(&self) -> bool
Sourcepub fn setHidesBottomBarWhenPushed(&self, hides_bottom_bar_when_pushed: bool)
pub fn setHidesBottomBarWhenPushed(&self, hides_bottom_bar_when_pushed: bool)
Setter for hidesBottomBarWhenPushed.
pub fn view(&self) -> Option<Retained<UIView>>
pub fn loadView(&self)
pub fn loadViewIfNeeded(&self)
pub fn viewIfLoaded(&self) -> Option<Retained<UIView>>
pub fn viewWillUnload(&self)
pub fn viewDidUnload(&self)
pub fn viewDidLoad(&self)
pub fn isViewLoaded(&self) -> bool
pub fn nibName(&self) -> Option<Retained<NSString>>
Loading Interface Builder products will not be supported in a future version of visionOS.
pub fn nibBundle(&self) -> Option<Retained<NSBundle>>
Loading Interface Builder products will not be supported in a future version of visionOS.
Sourcepub unsafe fn performSegueWithIdentifier_sender(
&self,
identifier: &NSString,
sender: Option<&AnyObject>,
)
👎Deprecated: Loading Interface Builder products will not be supported in a future version of visionOS.
pub unsafe fn performSegueWithIdentifier_sender( &self, identifier: &NSString, sender: Option<&AnyObject>, )
Loading Interface Builder products will not be supported in a future version of visionOS.
§Safety
sender should be of the correct type.
Sourcepub unsafe fn shouldPerformSegueWithIdentifier_sender(
&self,
identifier: &NSString,
sender: Option<&AnyObject>,
) -> bool
👎Deprecated: Loading Interface Builder products will not be supported in a future version of visionOS.
pub unsafe fn shouldPerformSegueWithIdentifier_sender( &self, identifier: &NSString, sender: Option<&AnyObject>, ) -> bool
Loading Interface Builder products will not be supported in a future version of visionOS.
§Safety
sender should be of the correct type.
Sourcepub unsafe fn canPerformUnwindSegueAction_fromViewController_sender(
&self,
action: Sel,
from_view_controller: &UIViewController,
sender: Option<&AnyObject>,
) -> bool
👎Deprecated: Loading Interface Builder products will not be supported in a future version of visionOS.
pub unsafe fn canPerformUnwindSegueAction_fromViewController_sender( &self, action: Sel, from_view_controller: &UIViewController, sender: Option<&AnyObject>, ) -> bool
Loading Interface Builder products will not be supported in a future version of visionOS.
§Safety
actionmust be a valid selector.sendershould be of the correct type.
Sourcepub unsafe fn canPerformUnwindSegueAction_fromViewController_withSender(
&self,
action: Sel,
from_view_controller: &UIViewController,
sender: &AnyObject,
) -> bool
👎Deprecated
pub unsafe fn canPerformUnwindSegueAction_fromViewController_withSender( &self, action: Sel, from_view_controller: &UIViewController, sender: &AnyObject, ) -> bool
§Safety
actionmust be a valid selector.sendershould be of the correct type.
Sourcepub unsafe fn viewControllerForUnwindSegueAction_fromViewController_withSender(
&self,
action: Sel,
from_view_controller: &UIViewController,
sender: Option<&AnyObject>,
) -> Option<Retained<UIViewController>>
👎Deprecated
pub unsafe fn viewControllerForUnwindSegueAction_fromViewController_withSender( &self, action: Sel, from_view_controller: &UIViewController, sender: Option<&AnyObject>, ) -> Option<Retained<UIViewController>>
§Safety
actionmust be a valid selector.sendershould be of the correct type.
Sourcepub fn viewWillAppear(&self, animated: bool)
pub fn viewWillAppear(&self, animated: bool)
Called when the view is about to made visible, before it is added to the hierarchy. Because the view is not yet in the hierarchy at the time this method is called, it is too early in the appearance transition for many usages. Prefer -viewIsAppearing: instead of this method when possible. Only use this method when its exact timing before the appearance transition starts running is desired, such as to set up an alongside animation with a transition coordinator, or as a counterpart for paired code in a viewWillDisappear/viewDidDisappear callback that does not rely on the view or view controller’s trait collection or the view hierarchy.
Sourcepub fn viewIsAppearing(&self, animated: bool)
pub fn viewIsAppearing(&self, animated: bool)
Called when the view is becoming visible at the beginning of the appearance transition, after it has been added to the hierarchy and been laid out by its superview. This method is very similar to -viewWillAppear: and is always called shortly afterwards (so changes made in either callback will be visible to the user at the same time), but unlike -viewWillAppear:, at the time when -viewIsAppearing: is called all of the following are valid for the view controller and its own view:
- View controller and view’s trait collection
- View’s superview chain and window
- View’s geometry (e.g. frame/bounds, safe area insets, layout margins) Choose this method instead of -viewWillAppear: by default, as it is a direct replacement that provides equivalent or superior behavior in nearly all cases.
Sourcepub fn viewDidAppear(&self, animated: bool)
pub fn viewDidAppear(&self, animated: bool)
Called after the view has fully transitioned to visible, when any transition animations have completed.
Sourcepub fn viewWillDisappear(&self, animated: bool)
pub fn viewWillDisappear(&self, animated: bool)
Called when the view is about to be dismissed, covered, or otherwise hidden.
Sourcepub fn viewDidDisappear(&self, animated: bool)
pub fn viewDidDisappear(&self, animated: bool)
Called after the view has fully been dismissed, covered, or otherwise hidden, when any transition animations have completed.
Sourcepub fn setNeedsUpdateProperties(&self)
pub fn setNeedsUpdateProperties(&self)
Call to manually request a properties update for the view controller. Multiple requests may be coalesced into a single update alongside the next layout pass.
Sourcepub fn updateProperties(&self)
pub fn updateProperties(&self)
Override point for subclasses to update properties of this view controller or its view.
Never call this method directly; use setNeedsUpdateProperties to schedule an update.
Sourcepub fn updatePropertiesIfNeeded(&self)
pub fn updatePropertiesIfNeeded(&self)
Forces an immediate properties update for this view controller and its view, including any view controllers and views in this subtree.
pub fn viewWillLayoutSubviews(&self)
pub fn viewDidLayoutSubviews(&self)
pub fn title(&self) -> Option<Retained<NSString>>
pub fn didReceiveMemoryWarning(&self)
pub fn parentViewController(&self) -> Option<Retained<UIViewController>>
pub fn modalViewController(&self) -> Option<Retained<UIViewController>>
pub fn presentedViewController(&self) -> Option<Retained<UIViewController>>
pub fn presentingViewController(&self) -> Option<Retained<UIViewController>>
pub fn definesPresentationContext(&self) -> bool
Sourcepub fn setDefinesPresentationContext(&self, defines_presentation_context: bool)
pub fn setDefinesPresentationContext(&self, defines_presentation_context: bool)
Setter for definesPresentationContext.
pub fn providesPresentationContextTransitionStyle(&self) -> bool
Sourcepub fn setProvidesPresentationContextTransitionStyle(
&self,
provides_presentation_context_transition_style: bool,
)
pub fn setProvidesPresentationContextTransitionStyle( &self, provides_presentation_context_transition_style: bool, )
Setter for providesPresentationContextTransitionStyle.
pub fn restoresFocusAfterTransition(&self) -> bool
Sourcepub fn setRestoresFocusAfterTransition(
&self,
restores_focus_after_transition: bool,
)
pub fn setRestoresFocusAfterTransition( &self, restores_focus_after_transition: bool, )
Setter for restoresFocusAfterTransition.
Sourcepub fn focusGroupIdentifier(&self) -> Option<Retained<NSString>>
pub fn focusGroupIdentifier(&self) -> Option<Retained<NSString>>
The identifier of the focus group that this view controller belongs to. If this is nil, the view controller inherits the focus group of its parent focus environment.
Sourcepub fn setFocusGroupIdentifier(&self, focus_group_identifier: Option<&NSString>)
pub fn setFocusGroupIdentifier(&self, focus_group_identifier: Option<&NSString>)
Setter for focusGroupIdentifier.
This is copied when set.
Sourcepub fn interactionActivityTrackingBaseName(&self) -> Option<Retained<NSString>>
pub fn interactionActivityTrackingBaseName(&self) -> Option<Retained<NSString>>
The base name for tracking user interactions as activities hosted by this view controller.
Sourcepub fn setInteractionActivityTrackingBaseName(
&self,
interaction_activity_tracking_base_name: Option<&NSString>,
)
pub fn setInteractionActivityTrackingBaseName( &self, interaction_activity_tracking_base_name: Option<&NSString>, )
Setter for interactionActivityTrackingBaseName.
This is copied when set.
pub fn isBeingPresented(&self) -> bool
pub fn isBeingDismissed(&self) -> bool
pub fn isMovingToParentViewController(&self) -> bool
pub fn isMovingFromParentViewController(&self) -> bool
pub fn presentViewController_animated_completion( &self, view_controller_to_present: &UIViewController, flag: bool, completion: Option<&Block<dyn Fn()>>, )
pub fn dismissViewControllerAnimated_completion( &self, flag: bool, completion: Option<&Block<dyn Fn()>>, )
pub fn presentModalViewController_animated( &self, modal_view_controller: &UIViewController, animated: bool, )
pub fn dismissModalViewControllerAnimated(&self, animated: bool)
pub fn modalTransitionStyle(&self) -> UIModalTransitionStyle
Sourcepub fn setModalTransitionStyle(
&self,
modal_transition_style: UIModalTransitionStyle,
)
pub fn setModalTransitionStyle( &self, modal_transition_style: UIModalTransitionStyle, )
Setter for modalTransitionStyle.
pub fn modalPresentationStyle(&self) -> UIModalPresentationStyle
Sourcepub fn setModalPresentationStyle(
&self,
modal_presentation_style: UIModalPresentationStyle,
)
pub fn setModalPresentationStyle( &self, modal_presentation_style: UIModalPresentationStyle, )
Setter for modalPresentationStyle.
pub fn modalPresentationCapturesStatusBarAppearance(&self) -> bool
Sourcepub fn setModalPresentationCapturesStatusBarAppearance(
&self,
modal_presentation_captures_status_bar_appearance: bool,
)
pub fn setModalPresentationCapturesStatusBarAppearance( &self, modal_presentation_captures_status_bar_appearance: bool, )
Setter for modalPresentationCapturesStatusBarAppearance.
pub fn disablesAutomaticKeyboardDismissal(&self) -> bool
pub fn wantsFullScreenLayout(&self) -> bool
Sourcepub fn setWantsFullScreenLayout(&self, wants_full_screen_layout: bool)
👎Deprecated
pub fn setWantsFullScreenLayout(&self, wants_full_screen_layout: bool)
Setter for wantsFullScreenLayout.
pub fn edgesForExtendedLayout(&self) -> UIRectEdge
Sourcepub fn setEdgesForExtendedLayout(&self, edges_for_extended_layout: UIRectEdge)
pub fn setEdgesForExtendedLayout(&self, edges_for_extended_layout: UIRectEdge)
Setter for edgesForExtendedLayout.
pub fn extendedLayoutIncludesOpaqueBars(&self) -> bool
Sourcepub fn setExtendedLayoutIncludesOpaqueBars(
&self,
extended_layout_includes_opaque_bars: bool,
)
pub fn setExtendedLayoutIncludesOpaqueBars( &self, extended_layout_includes_opaque_bars: bool, )
Setter for extendedLayoutIncludesOpaqueBars.
pub fn automaticallyAdjustsScrollViewInsets(&self) -> bool
Use UIScrollView’s contentInsetAdjustmentBehavior instead
Sourcepub fn setAutomaticallyAdjustsScrollViewInsets(
&self,
automatically_adjusts_scroll_view_insets: bool,
)
👎Deprecated: Use UIScrollView’s contentInsetAdjustmentBehavior instead
pub fn setAutomaticallyAdjustsScrollViewInsets( &self, automatically_adjusts_scroll_view_insets: bool, )
Use UIScrollView’s contentInsetAdjustmentBehavior instead
Setter for automaticallyAdjustsScrollViewInsets.
Sourcepub fn setContentScrollView_forEdge(
&self,
scroll_view: Option<&UIScrollView>,
edge: NSDirectionalRectEdge,
)
pub fn setContentScrollView_forEdge( &self, scroll_view: Option<&UIScrollView>, edge: NSDirectionalRectEdge, )
Aggregate values (e.g., NSDirectionalRectEdgeAll) are accepted in the edge parameter; NSDirectionalRectEdgeLeading and Trailing are ignored on iOS 15.0
Sourcepub fn contentScrollViewForEdge(
&self,
edge: NSDirectionalRectEdge,
) -> Option<Retained<UIScrollView>>
pub fn contentScrollViewForEdge( &self, edge: NSDirectionalRectEdge, ) -> Option<Retained<UIScrollView>>
Pass only a single edge (e.g., NSDirectionalRectEdgeTop) in the edge parameter. Raises an exception when passed an aggregate edge (e.g., NSDirectionalRectEdgeAll)
pub fn preferredContentSize(&self) -> CGSize
Sourcepub fn setPreferredContentSize(&self, preferred_content_size: CGSize)
pub fn setPreferredContentSize(&self, preferred_content_size: CGSize)
Setter for preferredContentSize.
pub fn preferredStatusBarStyle(&self) -> UIStatusBarStyle
Has no effect on visionOS
pub fn prefersStatusBarHidden(&self) -> bool
Has no effect on visionOS
pub fn preferredStatusBarUpdateAnimation(&self) -> UIStatusBarAnimation
Has no effect on visionOS
pub fn setNeedsStatusBarAppearanceUpdate(&self)
Sourcepub unsafe fn targetViewControllerForAction_sender(
&self,
action: Sel,
sender: Option<&AnyObject>,
) -> Option<Retained<UIViewController>>
pub unsafe fn targetViewControllerForAction_sender( &self, action: Sel, sender: Option<&AnyObject>, ) -> Option<Retained<UIViewController>>
§Safety
actionmust be a valid selector.sendershould be of the correct type.
Sourcepub unsafe fn showViewController_sender(
&self,
vc: &UIViewController,
sender: Option<&AnyObject>,
)
pub unsafe fn showViewController_sender( &self, vc: &UIViewController, sender: Option<&AnyObject>, )
§Safety
sender should be of the correct type.
Sourcepub unsafe fn showDetailViewController_sender(
&self,
vc: &UIViewController,
sender: Option<&AnyObject>,
)
pub unsafe fn showDetailViewController_sender( &self, vc: &UIViewController, sender: Option<&AnyObject>, )
§Safety
sender should be of the correct type.
pub fn preferredUserInterfaceStyle(&self) -> UIUserInterfaceStyle
pub fn setNeedsUserInterfaceAppearanceUpdate(&self)
pub fn overrideUserInterfaceStyle(&self) -> UIUserInterfaceStyle
Sourcepub fn setOverrideUserInterfaceStyle(
&self,
override_user_interface_style: UIUserInterfaceStyle,
)
pub fn setOverrideUserInterfaceStyle( &self, override_user_interface_style: UIUserInterfaceStyle, )
Setter for overrideUserInterfaceStyle.
pub fn shouldAutorotateToInterfaceOrientation( &self, to_interface_orientation: UIInterfaceOrientation, ) -> bool
pub fn shouldAutorotate(&self) -> bool
Update supported interface orientations and call setNeedsUpdateOfSupportedInterfaceOrientations to indicate a change.
pub fn supportedInterfaceOrientations(&self) -> UIInterfaceOrientationMask
pub fn preferredInterfaceOrientationForPresentation( &self, ) -> UIInterfaceOrientation
Sourcepub fn setNeedsUpdateOfSupportedInterfaceOrientations(&self)
pub fn setNeedsUpdateOfSupportedInterfaceOrientations(&self)
Notifies the view controller that a change occurred that affects supported interface orientations or the preferred interface orientation for presentation.
By default, this will animate any changes to orientation. To perform a non-animated update, call within [UIView performWithoutAnimation:].
pub fn rotatingHeaderView(&self) -> Option<Retained<UIView>>
Header views are animated along with the rest of the view hierarchy
Footer views are animated along with the rest of the view hierarchy
pub fn interfaceOrientation(&self) -> UIInterfaceOrientation
pub fn willRotateToInterfaceOrientation_duration( &self, to_interface_orientation: UIInterfaceOrientation, duration: f64, )
Implement viewWillTransitionToSize:withTransitionCoordinator: instead
pub fn didRotateFromInterfaceOrientation( &self, from_interface_orientation: UIInterfaceOrientation, )
pub fn willAnimateRotationToInterfaceOrientation_duration( &self, to_interface_orientation: UIInterfaceOrientation, duration: f64, )
Implement viewWillTransitionToSize:withTransitionCoordinator: instead
pub fn willAnimateFirstHalfOfRotationToInterfaceOrientation_duration( &self, to_interface_orientation: UIInterfaceOrientation, duration: f64, )
pub fn didAnimateFirstHalfOfRotationToInterfaceOrientation( &self, to_interface_orientation: UIInterfaceOrientation, )
pub fn willAnimateSecondHalfOfRotationFromInterfaceOrientation_duration( &self, from_interface_orientation: UIInterfaceOrientation, duration: f64, )
pub fn isEditing(&self) -> bool
Sourcepub fn setEditing(&self, editing: bool)
pub fn setEditing(&self, editing: bool)
Setter for isEditing.
pub fn setEditing_animated(&self, editing: bool, animated: bool)
pub fn childViewControllers(&self) -> Retained<NSArray<UIViewController>> ⓘ
pub fn addChildViewController(&self, child_controller: &UIViewController)
pub fn removeFromParentViewController(&self)
pub fn transitionFromViewController_toViewController_duration_options_animations_completion( &self, from_view_controller: &UIViewController, to_view_controller: &UIViewController, duration: f64, options: UIViewAnimationOptions, animations: Option<&Block<dyn Fn()>>, completion: Option<&Block<dyn Fn(Bool)>>, )
pub fn beginAppearanceTransition_animated( &self, is_appearing: bool, animated: bool, )
pub fn endAppearanceTransition(&self)
pub fn childViewControllerForStatusBarStyle( &self, ) -> Option<Retained<UIViewController>>
Has no effect on visionOS
pub fn childViewControllerForStatusBarHidden( &self, ) -> Option<Retained<UIViewController>>
Has no effect on visionOS
pub fn setOverrideTraitCollection_forChildViewController( &self, collection: Option<&UITraitCollection>, child_view_controller: &UIViewController, )
Use the traitOverrides property on the child view controller instead
pub fn overrideTraitCollectionForChildViewController( &self, child_view_controller: &UIViewController, ) -> Option<Retained<UITraitCollection>>
Use the traitOverrides property on the child view controller instead
pub fn childViewControllerForUserInterfaceStyle( &self, ) -> Option<Retained<UIViewController>>
pub fn automaticallyForwardAppearanceAndRotationMethodsToChildViewControllers( &self, ) -> bool
pub fn shouldAutomaticallyForwardRotationMethods(&self) -> bool
Manually forward viewWillTransitionToSize:withTransitionCoordinator: if necessary
pub fn shouldAutomaticallyForwardAppearanceMethods(&self) -> bool
pub fn willMoveToParentViewController(&self, parent: Option<&UIViewController>)
pub fn didMoveToParentViewController(&self, parent: Option<&UIViewController>)
pub fn restorationIdentifier(&self) -> Option<Retained<NSString>>
Sourcepub fn setRestorationIdentifier(
&self,
restoration_identifier: Option<&NSString>,
)
pub fn setRestorationIdentifier( &self, restoration_identifier: Option<&NSString>, )
Setter for restorationIdentifier.
This is copied when set.
Sourcepub unsafe fn encodeRestorableStateWithCoder(&self, coder: &NSCoder)
pub unsafe fn encodeRestorableStateWithCoder(&self, coder: &NSCoder)
§Safety
coder possibly has further requirements.
Sourcepub unsafe fn decodeRestorableStateWithCoder(&self, coder: &NSCoder)
pub unsafe fn decodeRestorableStateWithCoder(&self, coder: &NSCoder)
§Safety
coder possibly has further requirements.
pub fn applicationFinishedRestoringState(&self)
pub fn updateViewConstraints(&self)
pub fn additionalSafeAreaInsets(&self) -> UIEdgeInsets
Sourcepub fn setAdditionalSafeAreaInsets(
&self,
additional_safe_area_insets: UIEdgeInsets,
)
pub fn setAdditionalSafeAreaInsets( &self, additional_safe_area_insets: UIEdgeInsets, )
Setter for additionalSafeAreaInsets.
pub fn systemMinimumLayoutMargins(&self) -> NSDirectionalEdgeInsets
pub fn viewRespectsSystemMinimumLayoutMargins(&self) -> bool
Sourcepub fn setViewRespectsSystemMinimumLayoutMargins(
&self,
view_respects_system_minimum_layout_margins: bool,
)
pub fn setViewRespectsSystemMinimumLayoutMargins( &self, view_respects_system_minimum_layout_margins: bool, )
Setter for viewRespectsSystemMinimumLayoutMargins.
pub fn viewLayoutMarginsDidChange(&self)
pub fn viewSafeAreaInsetsDidChange(&self)
Sourcepub fn performsActionsWhilePresentingModally(&self) -> bool
pub fn performsActionsWhilePresentingModally(&self) -> bool
Determines whether the receiver continues to respond to actions while it is presenting a view controller modally.
Defaults to YES. You can change the default return value by providing a value for UIViewControllerPerformsActionsWhilePresentingModally in your Info.plist file.
pub fn extensionContext(&self) -> Option<Retained<NSExtensionContext>>
pub fn presentationController( &self, ) -> Option<Retained<UIPresentationController>>
pub fn activePresentationController( &self, ) -> Option<Retained<UIPresentationController>>
pub fn isModalInPresentation(&self) -> bool
Sourcepub fn setModalInPresentation(&self, modal_in_presentation: bool)
pub fn setModalInPresentation(&self, modal_in_presentation: bool)
Setter for isModalInPresentation.
pub fn registerForPreviewingWithDelegate_sourceView( &self, delegate: &ProtocolObject<dyn UIViewControllerPreviewingDelegate>, source_view: &UIView, ) -> Retained<ProtocolObject<dyn UIViewControllerPreviewing>> ⓘ
UIViewControllerPreviewing is deprecated. Please use UIContextMenuInteraction.
pub fn unregisterForPreviewingWithContext( &self, previewing: &ProtocolObject<dyn UIViewControllerPreviewing>, )
UIViewControllerPreviewing is deprecated. Please use UIContextMenuInteraction.
pub fn childViewControllerForScreenEdgesDeferringSystemGestures( &self, ) -> Option<Retained<UIViewController>>
pub fn preferredScreenEdgesDeferringSystemGestures(&self) -> UIRectEdge
pub fn setNeedsUpdateOfScreenEdgesDeferringSystemGestures(&self)
pub fn childViewControllerForHomeIndicatorAutoHidden( &self, ) -> Option<Retained<UIViewController>>
pub fn prefersHomeIndicatorAutoHidden(&self) -> bool
pub fn setNeedsUpdateOfHomeIndicatorAutoHidden(&self)
pub fn childViewControllerForPointerLock( &self, ) -> Option<Retained<UIViewController>>
pub fn prefersPointerLocked(&self) -> bool
pub fn setNeedsUpdateOfPrefersPointerLocked(&self)
Requests the view update its content unavailable configuration for its current state. This method is called automatically
when the view’s contentUnavailableConfigurationState may have changed, as well as in other circumstances where an
update may be required. Multiple requests may be coalesced into a single update at the appropriate time.
Sourcepub fn childViewControllerForInterfaceOrientationLock(
&self,
) -> Option<Retained<UIViewController>>
pub fn childViewControllerForInterfaceOrientationLock( &self, ) -> Option<Retained<UIViewController>>
Override to return a child view controller or nil. If non-nil, that view controller’s preference for interface orientation lock will be used. If nil, self is used.
Whenever the return value changes, call setNeedsUpdateOfPrefersInterfaceOrientationLocked().
Sourcepub fn prefersInterfaceOrientationLocked(&self) -> bool
pub fn prefersInterfaceOrientationLocked(&self) -> bool
Whether this view controller prefers the scene’s interface orientation to be locked when shown. The default is NO. Note that this preference may or may not be honored.
See UIWindowScene.Geometry for the current state of interface orientation lock.
Sourcepub fn setNeedsUpdateOfPrefersInterfaceOrientationLocked(&self)
pub fn setNeedsUpdateOfPrefersInterfaceOrientationLocked(&self)
Call whenever the view controller’s preference for interface orientation lock has changed
pub fn previewActionItems( &self, ) -> Retained<NSArray<ProtocolObject<dyn UIPreviewActionItem>>> ⓘ
UIViewControllerPreviewing is deprecated. Please use UIContextMenuInteraction.
pub fn traitOverrides(&self) -> Retained<ProtocolObject<dyn UITraitOverrides>> ⓘ
Sourcepub fn updateTraitsIfNeeded(&self)
pub fn updateTraitsIfNeeded(&self)
Forces an immediate trait update for this view controller and its view, including any view controllers and views in this subtree. Any trait change callbacks are sent synchronously.
pub fn preferredContainerBackgroundStyle(&self) -> UIContainerBackgroundStyle
pub fn childViewControllerForPreferredContainerBackgroundStyle( &self, ) -> Option<Retained<UIViewController>>
pub fn setNeedsUpdateOfPreferredContainerBackgroundStyle(&self)
Methods from Deref<Target = UIResponder>§
pub fn nextResponder(&self) -> Option<Retained<UIResponder>>
pub fn canBecomeFirstResponder(&self) -> bool
pub fn becomeFirstResponder(&self) -> bool
pub fn canResignFirstResponder(&self) -> bool
pub fn resignFirstResponder(&self) -> bool
pub fn isFirstResponder(&self) -> bool
pub fn touchesBegan_withEvent( &self, touches: &NSSet<UITouch>, event: Option<&UIEvent>, )
pub fn touchesMoved_withEvent( &self, touches: &NSSet<UITouch>, event: Option<&UIEvent>, )
pub fn touchesEnded_withEvent( &self, touches: &NSSet<UITouch>, event: Option<&UIEvent>, )
pub fn touchesCancelled_withEvent( &self, touches: &NSSet<UITouch>, event: Option<&UIEvent>, )
pub fn touchesEstimatedPropertiesUpdated(&self, touches: &NSSet<UITouch>)
pub fn pressesBegan_withEvent( &self, presses: &NSSet<UIPress>, event: Option<&UIPressesEvent>, )
pub fn pressesChanged_withEvent( &self, presses: &NSSet<UIPress>, event: Option<&UIPressesEvent>, )
pub fn pressesEnded_withEvent( &self, presses: &NSSet<UIPress>, event: Option<&UIPressesEvent>, )
pub fn pressesCancelled_withEvent( &self, presses: &NSSet<UIPress>, event: Option<&UIPressesEvent>, )
pub fn motionBegan_withEvent( &self, motion: UIEventSubtype, event: Option<&UIEvent>, )
pub fn motionEnded_withEvent( &self, motion: UIEventSubtype, event: Option<&UIEvent>, )
pub fn motionCancelled_withEvent( &self, motion: UIEventSubtype, event: Option<&UIEvent>, )
pub fn remoteControlReceivedWithEvent(&self, event: Option<&UIEvent>)
Sourcepub unsafe fn canPerformAction_withSender(
&self,
action: Sel,
sender: Option<&AnyObject>,
) -> bool
pub unsafe fn canPerformAction_withSender( &self, action: Sel, sender: Option<&AnyObject>, ) -> bool
§Safety
actionmust be a valid selector.sendershould be of the correct type.
Sourcepub unsafe fn targetForAction_withSender(
&self,
action: Sel,
sender: Option<&AnyObject>,
) -> Option<Retained<AnyObject>>
pub unsafe fn targetForAction_withSender( &self, action: Sel, sender: Option<&AnyObject>, ) -> Option<Retained<AnyObject>>
§Safety
actionmust be a valid selector.sendershould be of the correct type.
pub fn undoManager(&self) -> Option<Retained<NSUndoManager>>
pub fn editingInteractionConfiguration( &self, ) -> UIEditingInteractionConfiguration
pub fn inputView(&self) -> Option<Retained<UIView>>
pub fn inputAccessoryView(&self) -> Option<Retained<UIView>>
Sourcepub fn inputAssistantItem(&self) -> Retained<UITextInputAssistantItem> ⓘ
pub fn inputAssistantItem(&self) -> Retained<UITextInputAssistantItem> ⓘ
This method is for clients that wish to put buttons on the Shortcuts Bar, shown on top of the keyboard. You may modify the returned inputAssistantItem to add to or replace the existing items on the bar. Modifications made to the returned UITextInputAssistantItem are reflected automatically. This method should not be overridden. Goes up the responder chain.
pub fn textInputMode(&self) -> Option<Retained<UITextInputMode>>
pub fn textInputContextIdentifier(&self) -> Option<Retained<NSString>>
pub fn reloadInputViews(&self)
pub fn userActivity(&self) -> Option<Retained<NSUserActivity>>
Sourcepub fn setUserActivity(&self, user_activity: Option<&NSUserActivity>)
pub fn setUserActivity(&self, user_activity: Option<&NSUserActivity>)
Setter for userActivity.
pub fn updateUserActivityState(&self, activity: &NSUserActivity)
pub fn restoreUserActivityState(&self, activity: &NSUserActivity)
Sourcepub unsafe fn captureTextFromCamera(&self, sender: Option<&AnyObject>)
pub unsafe fn captureTextFromCamera(&self, sender: Option<&AnyObject>)
§Safety
sender should be of the correct type.
Methods from Deref<Target = NSObject>§
Sourcepub fn doesNotRecognizeSelector(&self, sel: Sel) -> !
pub fn doesNotRecognizeSelector(&self, sel: Sel) -> !
Handle messages the object doesn’t recognize.
See Apple’s documentation for details.
Methods from Deref<Target = AnyObject>§
Sourcepub fn class(&self) -> &'static AnyClass
pub fn class(&self) -> &'static AnyClass
Dynamically find the class of this object.
§Panics
May panic if the object is invalid (which may be the case for objects
returned from unavailable init/new methods).
§Example
Check that an instance of NSObject has the precise class NSObject.
use objc2::ClassType;
use objc2::runtime::NSObject;
let obj = NSObject::new();
assert_eq!(obj.class(), NSObject::class());Sourcepub unsafe fn get_ivar<T>(&self, name: &str) -> &Twhere
T: Encode,
👎Deprecated: this is difficult to use correctly, use Ivar::load instead.
pub unsafe fn get_ivar<T>(&self, name: &str) -> &Twhere
T: Encode,
this is difficult to use correctly, use Ivar::load instead.
Use Ivar::load instead.
§Safety
The object must have an instance variable with the given name, and it
must be of type T.
See Ivar::load_ptr for details surrounding this.
Sourcepub fn downcast_ref<T>(&self) -> Option<&T>where
T: DowncastTarget,
pub fn downcast_ref<T>(&self) -> Option<&T>where
T: DowncastTarget,
Attempt to downcast the object to a class of type T.
This is the reference-variant. Use Retained::downcast if you want
to convert a retained object to another type.
§Mutable classes
Some classes have immutable and mutable variants, such as NSString
and NSMutableString.
When some Objective-C API signature says it gives you an immutable class, it generally expects you to not mutate that, even though it may technically be mutable “under the hood”.
So using this method to convert a NSString to a NSMutableString,
while not unsound, is generally frowned upon unless you created the
string yourself, or the API explicitly documents the string to be
mutable.
See Apple’s documentation on mutability and on
isKindOfClass: for more details.
§Generic classes
Objective-C generics are called “lightweight generics”, and that’s because they aren’t exposed in the runtime. This makes it impossible to safely downcast to generic collections, so this is disallowed by this method.
You can, however, safely downcast to generic collections where all the
type-parameters are AnyObject.
§Panics
This works internally by calling isKindOfClass:. That means that the
object must have the instance method of that name, and an exception
will be thrown (if CoreFoundation is linked) or the process will abort
if that is not the case. In the vast majority of cases, you don’t need
to worry about this, since both root objects NSObject and
NSProxy implement this method.
§Examples
Cast an NSString back and forth from NSObject.
use objc2::rc::Retained;
use objc2_foundation::{NSObject, NSString};
let obj: Retained<NSObject> = NSString::new().into_super();
let string = obj.downcast_ref::<NSString>().unwrap();
// Or with `downcast`, if we do not need the object afterwards
let string = obj.downcast::<NSString>().unwrap();Try (and fail) to cast an NSObject to an NSString.
use objc2_foundation::{NSObject, NSString};
let obj = NSObject::new();
assert!(obj.downcast_ref::<NSString>().is_none());Try to cast to an array of strings.
use objc2_foundation::{NSArray, NSObject, NSString};
let arr = NSArray::from_retained_slice(&[NSObject::new()]);
// This is invalid and doesn't type check.
let arr = arr.downcast_ref::<NSArray<NSString>>();This fails to compile, since it would require enumerating over the array to ensure that each element is of the desired type, which is a performance pitfall.
Downcast when processing each element instead.
use objc2_foundation::{NSArray, NSObject, NSString};
let arr = NSArray::from_retained_slice(&[NSObject::new()]);
for elem in arr {
if let Some(data) = elem.downcast_ref::<NSString>() {
// handle `data`
}
}Trait Implementations§
Source§impl AsRef<AnyObject> for DefaultFerroViewController
impl AsRef<AnyObject> for DefaultFerroViewController
Source§impl AsRef<UIViewController> for DefaultFerroViewController
impl AsRef<UIViewController> for DefaultFerroViewController
Source§fn as_ref(&self) -> &UIViewController
fn as_ref(&self) -> &UIViewController
Source§impl Borrow<AnyObject> for DefaultFerroViewController
impl Borrow<AnyObject> for DefaultFerroViewController
Source§impl Borrow<UIViewController> for DefaultFerroViewController
impl Borrow<UIViewController> for DefaultFerroViewController
Source§fn borrow(&self) -> &UIViewController
fn borrow(&self) -> &UIViewController
Source§impl ClassType for DefaultFerroViewController
impl ClassType for DefaultFerroViewController
Source§const NAME: &'static str = "DefaultFerroViewController"
const NAME: &'static str = "DefaultFerroViewController"
Source§type Super = UIViewController
type Super = UIViewController
Source§type ThreadKind = dyn MainThreadOnly
type ThreadKind = dyn MainThreadOnly
Source§impl Deref for DefaultFerroViewController
impl Deref for DefaultFerroViewController
impl DowncastTarget for DefaultFerroViewController
Source§impl IFerroViewController for DefaultFerroViewController
The contract of a view controller, which the class implements as the
reference’s does, through its state. The getters of the status bar
are the values that were set (or the defaults), not the answers to
UIKit (preferredStatusBarStyle and prefersStatusBarHidden of the
class), as in the reference, where the two are implemented
explicitly.
impl IFerroViewController for DefaultFerroViewController
The contract of a view controller, which the class implements as the
reference’s does, through its state. The getters of the status bar
are the values that were set (or the defaults), not the answers to
UIKit (preferredStatusBarStyle and prefersStatusBarHidden of the
class), as in the reference, where the two are implemented
explicitly.
Source§fn preferred_status_bar_style(&self) -> StatusBarStyle
fn preferred_status_bar_style(&self) -> StatusBarStyle
Source§fn set_preferred_status_bar_style(&self, value: StatusBarStyle)
fn set_preferred_status_bar_style(&self, value: StatusBarStyle)
Source§fn safe_area_padding(&self) -> Thickness
fn safe_area_padding(&self) -> Thickness
Source§fn safe_area_padding_changed(
&self,
handler: Rc<dyn Fn()>,
) -> Rc<dyn IDisposable>
fn safe_area_padding_changed( &self, handler: Rc<dyn Fn()>, ) -> Rc<dyn IDisposable>
Source§impl Message for DefaultFerroViewController
impl Message for DefaultFerroViewController
Source§impl NSObjectProtocol for DefaultFerroViewController
impl NSObjectProtocol for DefaultFerroViewController
Source§fn isEqual(&self, other: Option<&AnyObject>) -> bool
fn isEqual(&self, other: Option<&AnyObject>) -> bool
Source§fn hash(&self) -> usize
fn hash(&self) -> usize
Source§fn isKindOfClass(&self, cls: &AnyClass) -> bool
fn isKindOfClass(&self, cls: &AnyClass) -> bool
Source§fn is_kind_of<T>(&self) -> bool
fn is_kind_of<T>(&self) -> bool
use isKindOfClass directly, or cast your objects with AnyObject::downcast_ref
Source§fn isMemberOfClass(&self, cls: &AnyClass) -> bool
fn isMemberOfClass(&self, cls: &AnyClass) -> bool
Source§fn respondsToSelector(&self, aSelector: Sel) -> bool
fn respondsToSelector(&self, aSelector: Sel) -> bool
Source§fn conformsToProtocol(&self, aProtocol: &AnyProtocol) -> bool
fn conformsToProtocol(&self, aProtocol: &AnyProtocol) -> bool
Source§fn description(&self) -> Retained<NSObject> ⓘ
fn description(&self) -> Retained<NSObject> ⓘ
Source§fn debugDescription(&self) -> Retained<NSObject> ⓘ
fn debugDescription(&self) -> Retained<NSObject> ⓘ
Source§impl RefEncode for DefaultFerroViewController
impl RefEncode for DefaultFerroViewController
Source§const ENCODING_REF: Encoding = <UIViewController as ::objc2::RefEncode>::ENCODING_REF
const ENCODING_REF: Encoding = <UIViewController as ::objc2::RefEncode>::ENCODING_REF
Auto Trait Implementations§
impl !Freeze for DefaultFerroViewController
impl !RefUnwindSafe for DefaultFerroViewController
impl !Send for DefaultFerroViewController
impl !Sync for DefaultFerroViewController
impl !Unpin for DefaultFerroViewController
impl !UnwindSafe for DefaultFerroViewController
impl UnsafeUnpin for DefaultFerroViewController
Blanket Implementations§
impl<T> AutoreleaseSafe for Twhere
T: ?Sized,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> ClassDefaults for Twhere
T: ?Sized,
impl<T> ClassDefaults for Twhere
T: ?Sized,
Source§fn static_constructor()
fn static_constructor()
affects_render, metadata
overrides). Read moreSource§impl<'a, T> MainThreadOnly for T
impl<'a, T> MainThreadOnly for T
Source§fn mtm(&self) -> MainThreadMarker
fn mtm(&self) -> MainThreadMarker
MainThreadMarker from the main-thread-only object. Read more