#[repr(C)]pub struct UIColor { /* private fields */ }UIColor only.Expand description
Implementations§
Source§impl UIColor
UIAccessibility.
impl UIColor
UIAccessibility.
pub unsafe fn accessibilityName(&self) -> Retained<NSString>
UIAccessibilityAdditions only.Source§impl UIColor
impl UIColor
pub unsafe fn colorWithWhite_alpha( white: CGFloat, alpha: CGFloat, ) -> Retained<UIColor>
objc2-core-foundation only.pub unsafe fn colorWithHue_saturation_brightness_alpha( hue: CGFloat, saturation: CGFloat, brightness: CGFloat, alpha: CGFloat, ) -> Retained<UIColor>
objc2-core-foundation only.pub unsafe fn colorWithRed_green_blue_alpha( red: CGFloat, green: CGFloat, blue: CGFloat, alpha: CGFloat, ) -> Retained<UIColor>
objc2-core-foundation only.pub unsafe fn colorWithDisplayP3Red_green_blue_alpha( display_p3_red: CGFloat, green: CGFloat, blue: CGFloat, alpha: CGFloat, ) -> Retained<UIColor>
objc2-core-foundation only.pub unsafe fn colorWithCGColor(cg_color: &CGColor) -> Retained<UIColor>
objc2-core-graphics only.pub unsafe fn colorWithPatternImage(image: &UIImage) -> Retained<UIColor>
UIImage only.pub unsafe fn colorWithCIColor(ci_color: &CIColor) -> Retained<UIColor>
objc2-core-image and non-watchOS only.pub unsafe fn initWithWhite_alpha( this: Allocated<Self>, white: CGFloat, alpha: CGFloat, ) -> Retained<UIColor>
objc2-core-foundation only.pub unsafe fn initWithHue_saturation_brightness_alpha( this: Allocated<Self>, hue: CGFloat, saturation: CGFloat, brightness: CGFloat, alpha: CGFloat, ) -> Retained<UIColor>
objc2-core-foundation only.pub unsafe fn initWithRed_green_blue_alpha( this: Allocated<Self>, red: CGFloat, green: CGFloat, blue: CGFloat, alpha: CGFloat, ) -> Retained<UIColor>
objc2-core-foundation only.pub unsafe fn initWithDisplayP3Red_green_blue_alpha( this: Allocated<Self>, display_p3_red: CGFloat, green: CGFloat, blue: CGFloat, alpha: CGFloat, ) -> Retained<UIColor>
objc2-core-foundation only.pub unsafe fn initWithCGColor( this: Allocated<Self>, cg_color: &CGColor, ) -> Retained<UIColor>
objc2-core-graphics only.pub unsafe fn initWithPatternImage( this: Allocated<Self>, image: &UIImage, ) -> Retained<UIColor>
UIImage only.pub unsafe fn initWithCIColor( this: Allocated<Self>, ci_color: &CIColor, ) -> Retained<UIColor>
objc2-core-image and non-watchOS only.pub unsafe fn blackColor() -> Retained<UIColor>
pub unsafe fn darkGrayColor() -> Retained<UIColor>
pub unsafe fn lightGrayColor() -> Retained<UIColor>
pub unsafe fn whiteColor() -> Retained<UIColor>
pub unsafe fn grayColor() -> Retained<UIColor>
pub unsafe fn redColor() -> Retained<UIColor>
pub unsafe fn greenColor() -> Retained<UIColor>
pub unsafe fn blueColor() -> Retained<UIColor>
pub unsafe fn cyanColor() -> Retained<UIColor>
pub unsafe fn yellowColor() -> Retained<UIColor>
pub unsafe fn magentaColor() -> Retained<UIColor>
pub unsafe fn orangeColor() -> Retained<UIColor>
pub unsafe fn purpleColor() -> Retained<UIColor>
pub unsafe fn brownColor() -> Retained<UIColor>
pub unsafe fn clearColor() -> Retained<UIColor>
pub unsafe fn set(&self)
pub unsafe fn setFill(&self)
pub unsafe fn setStroke(&self)
pub unsafe fn getWhite_alpha( &self, white: *mut CGFloat, alpha: *mut CGFloat, ) -> bool
objc2-core-foundation only.pub unsafe fn getHue_saturation_brightness_alpha( &self, hue: *mut CGFloat, saturation: *mut CGFloat, brightness: *mut CGFloat, alpha: *mut CGFloat, ) -> bool
objc2-core-foundation only.pub unsafe fn getRed_green_blue_alpha( &self, red: *mut CGFloat, green: *mut CGFloat, blue: *mut CGFloat, alpha: *mut CGFloat, ) -> bool
objc2-core-foundation only.pub unsafe fn colorWithAlphaComponent( &self, alpha: CGFloat, ) -> Retained<UIColor>
objc2-core-foundation only.pub unsafe fn CGColor(&self) -> Retained<CGColor>
objc2-core-graphics only.pub unsafe fn CIColor(&self) -> Retained<CIColor>
objc2-core-image and non-watchOS only.impl UIColor
UINSItemProvider.
Source§impl UIColor
UIColorNamedColors.
impl UIColor
UIColorNamedColors.
pub unsafe fn colorNamed(name: &NSString) -> Option<Retained<UIColor>>
pub unsafe fn colorNamed_inBundle_compatibleWithTraitCollection( name: &NSString, bundle: Option<&NSBundle>, trait_collection: Option<&UITraitCollection>, ) -> Option<Retained<UIColor>>
UITraitCollection only.Source§impl UIColor
DynamicColors.
impl UIColor
DynamicColors.
pub unsafe fn colorWithDynamicProvider( dynamic_provider: &Block<dyn Fn(NonNull<UITraitCollection>) -> NonNull<UIColor>>, ) -> Retained<UIColor>
UITraitCollection and block2 only.pub unsafe fn initWithDynamicProvider( this: Allocated<Self>, dynamic_provider: &Block<dyn Fn(NonNull<UITraitCollection>) -> NonNull<UIColor>>, ) -> Retained<UIColor>
UITraitCollection and block2 only.pub unsafe fn resolvedColorWithTraitCollection( &self, trait_collection: &UITraitCollection, ) -> Retained<UIColor>
UITraitCollection only.Source§impl UIColor
ProminenceSupport.
impl UIColor
ProminenceSupport.
pub unsafe fn colorWithProminence( &self, prominence: UIColorProminence, ) -> Retained<UIColor>
pub unsafe fn prominence(&self) -> UIColorProminence
Source§impl UIColor
UIColorSystemColors.
impl UIColor
UIColorSystemColors.
pub unsafe fn systemRedColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemGreenColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemBlueColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemOrangeColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemYellowColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemPinkColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemPurpleColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemTealColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemIndigoColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemBrownColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemMintColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemCyanColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemGrayColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemGray2Color() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemGray3Color() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemGray4Color() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemGray5Color() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemGray6Color() -> Retained<UIColor>
UIInterface only.pub unsafe fn tintColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn labelColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn secondaryLabelColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn tertiaryLabelColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn quaternaryLabelColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn linkColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn placeholderTextColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn separatorColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn opaqueSeparatorColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemBackgroundColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn secondarySystemBackgroundColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn tertiarySystemBackgroundColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemGroupedBackgroundColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn secondarySystemGroupedBackgroundColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn tertiarySystemGroupedBackgroundColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn systemFillColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn secondarySystemFillColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn tertiarySystemFillColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn quaternarySystemFillColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn lightTextColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn darkTextColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn groupTableViewBackgroundColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn viewFlipsideBackgroundColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn scrollViewTexturedBackgroundColor() -> Retained<UIColor>
UIInterface only.pub unsafe fn underPageBackgroundColor() -> Retained<UIColor>
UIInterface 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.
§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 ClassType for UIColor
impl ClassType for UIColor
Source§const NAME: &'static str = "UIColor"
const NAME: &'static str = "UIColor"
Source§type ThreadKind = <<UIColor as ClassType>::Super as ClassType>::ThreadKind
type ThreadKind = <<UIColor as ClassType>::Super as ClassType>::ThreadKind
Source§impl CopyingHelper for UIColor
impl CopyingHelper for UIColor
Source§impl NSCopying for UIColor
impl NSCopying for UIColor
Source§impl NSItemProviderReading for UIColor
impl NSItemProviderReading for UIColor
Source§impl NSItemProviderWriting for UIColor
impl NSItemProviderWriting for UIColor
Source§unsafe fn writableTypeIdentifiersForItemProvider_class() -> Retained<NSArray<NSString>>
unsafe fn writableTypeIdentifiersForItemProvider_class() -> Retained<NSArray<NSString>>
NSArray and NSString only.Source§unsafe fn writableTypeIdentifiersForItemProvider(
&self,
) -> Retained<NSArray<NSString>>
unsafe fn writableTypeIdentifiersForItemProvider( &self, ) -> Retained<NSArray<NSString>>
NSArray and NSString only.Source§unsafe fn itemProviderVisibilityForRepresentationWithTypeIdentifier_class(
type_identifier: &NSString,
) -> NSItemProviderRepresentationVisibility
unsafe fn itemProviderVisibilityForRepresentationWithTypeIdentifier_class( type_identifier: &NSString, ) -> NSItemProviderRepresentationVisibility
NSString only.Source§unsafe fn itemProviderVisibilityForRepresentationWithTypeIdentifier(
&self,
type_identifier: &NSString,
) -> NSItemProviderRepresentationVisibility
unsafe fn itemProviderVisibilityForRepresentationWithTypeIdentifier( &self, type_identifier: &NSString, ) -> NSItemProviderRepresentationVisibility
NSString only.Source§impl NSObjectProtocol for UIColor
impl NSObjectProtocol for UIColor
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