#[repr(C)]pub struct UITabBarItem { /* private fields */ }
UIBarItem
and UITabBarItem
only.Expand description
Implementations§
impl UITabBarItem
UIPopoverPresentationControllerSourceItem.
Source§impl UITabBarItem
impl UITabBarItem
pub unsafe fn init(this: Allocated<Self>) -> Retained<Self>
pub unsafe fn initWithCoder( this: Allocated<Self>, coder: &NSCoder, ) -> Option<Retained<Self>>
pub unsafe fn initWithTitle_image_tag( this: Allocated<Self>, title: Option<&NSString>, image: Option<&UIImage>, tag: NSInteger, ) -> Retained<Self>
UIImage
only.pub unsafe fn initWithTitle_image_selectedImage( this: Allocated<Self>, title: Option<&NSString>, image: Option<&UIImage>, selected_image: Option<&UIImage>, ) -> Retained<Self>
UIImage
only.pub unsafe fn initWithTabBarSystemItem_tag( this: Allocated<Self>, system_item: UITabBarSystemItem, tag: NSInteger, ) -> Retained<Self>
pub unsafe fn selectedImage(&self) -> Option<Retained<UIImage>>
UIImage
only.Sourcepub unsafe fn setSelectedImage(&self, selected_image: Option<&UIImage>)
Available on crate feature UIImage
only.
pub unsafe fn setSelectedImage(&self, selected_image: Option<&UIImage>)
UIImage
only.Setter for selectedImage
.
pub unsafe fn badgeValue(&self) -> Option<Retained<NSString>>
Sourcepub unsafe fn setBadgeValue(&self, badge_value: Option<&NSString>)
pub unsafe fn setBadgeValue(&self, badge_value: Option<&NSString>)
Setter for badgeValue
.
pub unsafe fn setFinishedSelectedImage_withFinishedUnselectedImage( &self, selected_image: Option<&UIImage>, unselected_image: Option<&UIImage>, )
UIImage
only.pub unsafe fn finishedSelectedImage(&self) -> Option<Retained<UIImage>>
UIImage
only.pub unsafe fn finishedUnselectedImage(&self) -> Option<Retained<UIImage>>
UIImage
only.pub unsafe fn titlePositionAdjustment(&self) -> UIOffset
UIGeometry
and objc2-core-foundation
only.Sourcepub unsafe fn setTitlePositionAdjustment(
&self,
title_position_adjustment: UIOffset,
)
Available on crate features UIGeometry
and objc2-core-foundation
only.
pub unsafe fn setTitlePositionAdjustment( &self, title_position_adjustment: UIOffset, )
UIGeometry
and objc2-core-foundation
only.Setter for titlePositionAdjustment
.
Sourcepub unsafe fn badgeColor(&self) -> Option<Retained<UIColor>>
Available on crate feature UIColor
only.
pub unsafe fn badgeColor(&self) -> Option<Retained<UIColor>>
UIColor
only.If this item displays a badge, this color will be used for the badge’s background. If set to nil, the default background color will be used instead.
Sourcepub unsafe fn setBadgeColor(&self, badge_color: Option<&UIColor>)
Available on crate feature UIColor
only.
pub unsafe fn setBadgeColor(&self, badge_color: Option<&UIColor>)
UIColor
only.Setter for badgeColor
.
Sourcepub unsafe fn setBadgeTextAttributes_forState(
&self,
text_attributes: Option<&NSDictionary<NSAttributedStringKey, AnyObject>>,
state: UIControlState,
)
Available on crate feature UIControl
only.
pub unsafe fn setBadgeTextAttributes_forState( &self, text_attributes: Option<&NSDictionary<NSAttributedStringKey, AnyObject>>, state: UIControlState, )
UIControl
only.Provide text attributes to use to draw the badge text for the given singular control state (Normal, Disabled, Focused, Selected, or Highlighted). Default values will be supplied for keys that are not provided by this dictionary. See NSAttributedString.h for details on what keys are available.
Sourcepub unsafe fn badgeTextAttributesForState(
&self,
state: UIControlState,
) -> Option<Retained<NSDictionary<NSAttributedStringKey, AnyObject>>>
Available on crate feature UIControl
only.
pub unsafe fn badgeTextAttributesForState( &self, state: UIControlState, ) -> Option<Retained<NSDictionary<NSAttributedStringKey, AnyObject>>>
UIControl
only.Returns attributes previously set via -setBadgeTextAttributes:forState:.
Sourcepub unsafe fn standardAppearance(&self) -> Option<Retained<UITabBarAppearance>>
Available on crate features UIBarAppearance
and UITabBarAppearance
only.
pub unsafe fn standardAppearance(&self) -> Option<Retained<UITabBarAppearance>>
UIBarAppearance
and UITabBarAppearance
only.When set and this item is selected, overrides the hosting tab bar’s standardAppearance.
Sourcepub unsafe fn setStandardAppearance(
&self,
standard_appearance: Option<&UITabBarAppearance>,
)
Available on crate features UIBarAppearance
and UITabBarAppearance
only.
pub unsafe fn setStandardAppearance( &self, standard_appearance: Option<&UITabBarAppearance>, )
UIBarAppearance
and UITabBarAppearance
only.Setter for standardAppearance
.
Sourcepub unsafe fn scrollEdgeAppearance(
&self,
) -> Option<Retained<UITabBarAppearance>>
Available on crate features UIBarAppearance
and UITabBarAppearance
only.
pub unsafe fn scrollEdgeAppearance( &self, ) -> Option<Retained<UITabBarAppearance>>
UIBarAppearance
and UITabBarAppearance
only.When set and this item is selected, overrides the hosting tab bar’s scrollEdgeAppearance.
Sourcepub unsafe fn setScrollEdgeAppearance(
&self,
scroll_edge_appearance: Option<&UITabBarAppearance>,
)
Available on crate features UIBarAppearance
and UITabBarAppearance
only.
pub unsafe fn setScrollEdgeAppearance( &self, scroll_edge_appearance: Option<&UITabBarAppearance>, )
UIBarAppearance
and UITabBarAppearance
only.Setter for scrollEdgeAppearance
.
Source§impl UITabBarItem
Methods declared on superclass NSObject
.
impl UITabBarItem
Methods declared on superclass NSObject
.
pub unsafe fn new(mtm: MainThreadMarker) -> Retained<Self>
impl UITabBarItem
SpringLoading.
Methods from Deref<Target = UIBarItem>§
pub unsafe fn isEnabled(&self) -> bool
Sourcepub unsafe fn setEnabled(&self, enabled: bool)
pub unsafe fn setEnabled(&self, enabled: bool)
Setter for isEnabled
.
pub unsafe fn title(&self) -> Option<Retained<NSString>>
pub unsafe fn image(&self) -> Option<Retained<UIImage>>
UIImage
only.Sourcepub unsafe fn setImage(&self, image: Option<&UIImage>)
Available on crate feature UIImage
only.
pub unsafe fn setImage(&self, image: Option<&UIImage>)
UIImage
only.Setter for image
.
pub unsafe fn landscapeImagePhone(&self) -> Option<Retained<UIImage>>
UIImage
only.Sourcepub unsafe fn setLandscapeImagePhone(
&self,
landscape_image_phone: Option<&UIImage>,
)
Available on crate feature UIImage
only.
pub unsafe fn setLandscapeImagePhone( &self, landscape_image_phone: Option<&UIImage>, )
UIImage
only.Setter for landscapeImagePhone
.
pub unsafe fn largeContentSizeImage(&self) -> Option<Retained<UIImage>>
UIImage
only.Sourcepub unsafe fn setLargeContentSizeImage(
&self,
large_content_size_image: Option<&UIImage>,
)
Available on crate feature UIImage
only.
pub unsafe fn setLargeContentSizeImage( &self, large_content_size_image: Option<&UIImage>, )
UIImage
only.Setter for largeContentSizeImage
.
pub unsafe fn imageInsets(&self) -> UIEdgeInsets
UIGeometry
and objc2-core-foundation
only.Sourcepub unsafe fn setImageInsets(&self, image_insets: UIEdgeInsets)
Available on crate features UIGeometry
and objc2-core-foundation
only.
pub unsafe fn setImageInsets(&self, image_insets: UIEdgeInsets)
UIGeometry
and objc2-core-foundation
only.Setter for imageInsets
.
pub unsafe fn landscapeImagePhoneInsets(&self) -> UIEdgeInsets
UIGeometry
and objc2-core-foundation
only.Sourcepub unsafe fn setLandscapeImagePhoneInsets(
&self,
landscape_image_phone_insets: UIEdgeInsets,
)
Available on crate features UIGeometry
and objc2-core-foundation
only.
pub unsafe fn setLandscapeImagePhoneInsets( &self, landscape_image_phone_insets: UIEdgeInsets, )
UIGeometry
and objc2-core-foundation
only.Setter for landscapeImagePhoneInsets
.
pub unsafe fn largeContentSizeImageInsets(&self) -> UIEdgeInsets
UIGeometry
and objc2-core-foundation
only.Sourcepub unsafe fn setLargeContentSizeImageInsets(
&self,
large_content_size_image_insets: UIEdgeInsets,
)
Available on crate features UIGeometry
and objc2-core-foundation
only.
pub unsafe fn setLargeContentSizeImageInsets( &self, large_content_size_image_insets: UIEdgeInsets, )
UIGeometry
and objc2-core-foundation
only.Setter for largeContentSizeImageInsets
.
pub unsafe fn tag(&self) -> NSInteger
pub unsafe fn setTitleTextAttributes_forState( &self, attributes: Option<&NSDictionary<NSAttributedStringKey, AnyObject>>, state: UIControlState, )
UIControl
only.pub unsafe fn titleTextAttributesForState( &self, state: UIControlState, ) -> Option<Retained<NSDictionary<NSAttributedStringKey, AnyObject>>>
UIControl
only.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
Available on crate feature UIIndirectScribbleInteraction
only.
pub fn class(&self) -> &'static AnyClass
UIIndirectScribbleInteraction
only.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.Available on crate feature UIIndirectScribbleInteraction
only.
pub unsafe fn get_ivar<T>(&self, name: &str) -> &Twhere
T: Encode,
Ivar::load
instead.UIIndirectScribbleInteraction
only.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,
Available on crate feature UIIndirectScribbleInteraction
only.
pub fn downcast_ref<T>(&self) -> Option<&T>where
T: DowncastTarget,
UIIndirectScribbleInteraction
only.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 UITabBarItem
impl AsRef<AnyObject> for UITabBarItem
Source§impl AsRef<NSObject> for UITabBarItem
impl AsRef<NSObject> for UITabBarItem
Source§impl AsRef<UIBarItem> for UITabBarItem
impl AsRef<UIBarItem> for UITabBarItem
Source§impl AsRef<UITabBarItem> for UITabBarItem
impl AsRef<UITabBarItem> for UITabBarItem
Source§impl Borrow<AnyObject> for UITabBarItem
impl Borrow<AnyObject> for UITabBarItem
Source§impl Borrow<NSObject> for UITabBarItem
impl Borrow<NSObject> for UITabBarItem
Source§impl Borrow<UIBarItem> for UITabBarItem
impl Borrow<UIBarItem> for UITabBarItem
Source§impl ClassType for UITabBarItem
impl ClassType for UITabBarItem
Source§const NAME: &'static str = "UITabBarItem"
const NAME: &'static str = "UITabBarItem"
Source§type ThreadKind = dyn MainThreadOnly
type ThreadKind = dyn MainThreadOnly
Source§impl Debug for UITabBarItem
impl Debug for UITabBarItem
Source§impl Deref for UITabBarItem
impl Deref for UITabBarItem
Source§impl Hash for UITabBarItem
impl Hash for UITabBarItem
Source§impl Message for UITabBarItem
impl Message for UITabBarItem
Source§impl NSCoding for UITabBarItem
impl NSCoding for UITabBarItem
Source§impl NSObjectProtocol for UITabBarItem
impl NSObjectProtocol for UITabBarItem
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
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 debugDescription(&self) -> Retained<NSObject>
fn debugDescription(&self) -> Retained<NSObject>
Source§impl PartialEq for UITabBarItem
impl PartialEq for UITabBarItem
Source§impl RefEncode for UITabBarItem
impl RefEncode for UITabBarItem
Source§const ENCODING_REF: Encoding = <UIBarItem as ::objc2::RefEncode>::ENCODING_REF
const ENCODING_REF: Encoding = <UIBarItem as ::objc2::RefEncode>::ENCODING_REF
Source§impl UIAppearance for UITabBarItem
impl UIAppearance for UITabBarItem
Source§unsafe fn appearance(mtm: MainThreadMarker) -> Retained<Self>
unsafe fn appearance(mtm: MainThreadMarker) -> Retained<Self>
UIAppearance
only.Source§unsafe fn appearanceWhenContainedInInstancesOfClasses(
container_types: &NSArray<AnyClass>,
mtm: MainThreadMarker,
) -> Retained<Self>
unsafe fn appearanceWhenContainedInInstancesOfClasses( container_types: &NSArray<AnyClass>, mtm: MainThreadMarker, ) -> Retained<Self>
UIAppearance
only.Source§unsafe fn appearanceForTraitCollection(
trait: &UITraitCollection,
mtm: MainThreadMarker,
) -> Retained<Self>
unsafe fn appearanceForTraitCollection( trait: &UITraitCollection, mtm: MainThreadMarker, ) -> Retained<Self>
UIAppearance
and UITraitCollection
only.Source§unsafe fn appearanceForTraitCollection_whenContainedInInstancesOfClasses(
trait: &UITraitCollection,
container_types: &NSArray<AnyClass>,
mtm: MainThreadMarker,
) -> Retained<Self>
unsafe fn appearanceForTraitCollection_whenContainedInInstancesOfClasses( trait: &UITraitCollection, container_types: &NSArray<AnyClass>, mtm: MainThreadMarker, ) -> Retained<Self>
UIAppearance
and UITraitCollection
only.Source§impl UIPopoverPresentationControllerSourceItem for UITabBarItem
Available on crate feature UIPopoverPresentationControllerSourceItem
only.
impl UIPopoverPresentationControllerSourceItem for UITabBarItem
UIPopoverPresentationControllerSourceItem
only.Source§impl UISpringLoadedInteractionSupporting for UITabBarItem
impl UISpringLoadedInteractionSupporting for UITabBarItem
Source§unsafe fn isSpringLoaded(&self) -> bool
unsafe fn isSpringLoaded(&self) -> bool
UISpringLoadedInteractionSupporting
only.Source§unsafe fn setSpringLoaded(&self, spring_loaded: bool)
unsafe fn setSpringLoaded(&self, spring_loaded: bool)
UISpringLoadedInteractionSupporting
only.isSpringLoaded
.impl DowncastTarget for UITabBarItem
impl Eq for UITabBarItem
Auto Trait Implementations§
impl !Freeze for UITabBarItem
impl !RefUnwindSafe for UITabBarItem
impl !Send for UITabBarItem
impl !Sync for UITabBarItem
impl !Unpin for UITabBarItem
impl !UnwindSafe for UITabBarItem
Blanket Implementations§
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<'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