Title: Theory / Important / CS / Programming / Objective-C / Library / UIKit / Control / Configuration
On every note of this deck, unless a note says otherwise:
Language: Objective-C
Language: Objective-C

Typ: UIConfigurationColorTransformer
Meaning: Generates a modified output color from an input color.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Language: Objective-C
Implementation: typedef UIColor * _Nonnull (^UIConfigurationColorTransformer)(UIColor *color)

Constant: UIConfigurationColorTransformerGrayscale
Meaning: A color transformer that returns a grayscale version of the color.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Language: Objective-C

Constant: UIConfigurationColorTransformerPreferredTint
Meaning: A color transformer that returns the preferred system accent color.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Language: Objective-C

Constant: UIConfigurationColorTransformerMonochromeTint
Meaning: A color transformer that returns the color with a monochrome tint.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Language: Objective-C

Typ: UIBackgroundConfiguration
Meaning: A configuration that describes a specific background appearance.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Language: Objective-C

Variable: backgroundConfiguration.customView
Meaning: A custom view for the background
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Typ: UIView
Variables: UIBackgroundConfiguration backgroundConfiguration

Variable: backgroundConfiguration.cornerRadius
Meaning: The preferred corner radius, using a continuous corner curve, for the background and stroke.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Variables: UIBackgroundConfiguration backgroundConfiguration
Initialization: 0.

Variable: backgroundConfiguration.backgroundInsets
Meaning: The insets (or outsets, if negative) for the background and stroke, relative to the edges of the containing view.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Typ: NSDirectionalEdgeInsets
Variables: UIBackgroundConfiguration backgroundConfiguration

Variable: backgroundConfiguration.edgesAddingLayoutMarginsToBackgroundInsets
Meaning: The edges on which the configuration adds the containing view’s layout margins to the background insets.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Typ: NSDirectionalRectEdge
Variables: UIBackgroundConfiguration backgroundConfiguration

Variable: backgroundConfiguration.backgroundColor
Meaning: The color of the background. Nil means to use tint color
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Variables: UIBackgroundConfiguration backgroundConfiguration

Variable: backgroundConfiguration.backgroundColorTransformer
Meaning: The color transformer for resolving the background color. nil means no transformer.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Variables: UIBackgroundConfiguration backgroundConfiguration

Variable: backgroundConfiguration.visualEffect
Meaning: The visual effect that the configuration applies to the background.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Variables: UIBackgroundConfiguration backgroundConfiguration
Initialization: nil

Variable: backgroundConfiguration.imageContentMode
Meaning: A property that determines the layout of a background image in a view when its bounds change.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Typ: UIViewContentMode
Variables: UIBackgroundConfiguration backgroundConfiguration

Variable: backgroundConfiguration.image
Meaning: The image displayed in the view’s background.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Variables: UIBackgroundConfiguration backgroundConfiguration

Variable: backgroundConfiguration.strokeOutset
Meaning: The outset (or inset, if negative) for the stroke.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Variables: UIBackgroundConfiguration backgroundConfiguration
Initialization: 0.

Variable: backgroundConfiguration.strokeWidth
Meaning: The width of the stroke.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Variables: UIBackgroundConfiguration backgroundConfiguration
Initialization: 0.

Variable: backgroundConfiguration.strokeColorTransformer
Meaning: The color transformer for resolving the stroke color.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Typ: UIConfigurationColorTransformer
Variables: UIBackgroundConfiguration backgroundConfiguration
Initialization: nil

Variable: backgroundConfiguration.strokeColor
Meaning: The color of the stroke. nil means to use tint
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Variables: UIBackgroundConfiguration backgroundConfiguration

Typ: UIVisualEffect
Function: An initializer for visual effect views and blur and vibrancy effect objects.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Variables: UIBackgroundConfiguration backgroundConfiguration
Language: Objective-C

Instruction: [backgroundConfiguration
  updatedConfigurationForState:state
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Returns: a configuration for the specified state by applying the configuration’s default values for that state to any properties that you haven’t customized.
Variables: UIBackgroundConfiguration backgroundConfiguration

Instruction: [backgroundConfiguration
  resolvedStrokeColorForTintColor:color
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Returns: Generates the resolved stroke color for the specified tint color, using the stroke color and color transformer.
Variables: UIBackgroundConfiguration backgroundConfiguration

Instruction: [backgroundConfiguration
  resolvedBackgroundColorForTintColor:color
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Returns: Generates the resolved background color for the specified tint color, using the background color and color transformer.
Variables: UIBackgroundConfiguration backgroundConfiguration

Instruction: [UIBackgroundConfiguration
  clearConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Returns: an empty background configuration with a transparent background and no default styling.

Instruction: [UIBackgroundConfiguration
  listSidebarHeaderConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Returns: the default configuration you use to style a sidebar list header.

Instruction: [UIBackgroundConfiguration
  listGroupedHeaderFooterConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Returns: the default configuration you use to style a grouped list header or footer.

Instruction: [UIBackgroundConfiguration
  listPlainHeaderFooterConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Returns: the default configuration you use to style a plain list header or footer.

Instruction: [UIBackgroundConfiguration
  listAccompaniedSidebarCellConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Returns: the default configuration you use to style a cell in an accompanied sidebar list.

Instruction: [UIBackgroundConfiguration
  listSidebarCellConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Returns: the default configuration you use to style a cell in a sidebar list.

Instruction: [UIBackgroundConfiguration
  listGroupedCellConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objc
Returns: the default configuration you use to style a cell in a grouped list.

Typ: UIContentView
Function: The requirements for a content view that you create using a configuration.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe default configuration you use to style a cell in a grouped list.
Language: Objective-C

Variable: contentView.configuration
Meaning: The current configuration of the view.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe default configuration you use to style a cell in a grouped list.
Typ: id<UIContentConfiguration>
Variables: UIContentView contentView

Typ: UIContentConfiguration
Meaning: The requirements for an object that provides the configuration for a content view.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe default configuration you use to style a cell in a grouped list.
Language: Objective-C

Instruction: [contentConfiguration
  makeContentView
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe default configuration you use to style a cell in a grouped list.
Returns: a new instance of the content view using this configuration.
Variables: UIContentConfiguration contentConfiguration

Instruction: [contentConfiguration
  updatedConfigurationForState:state
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe default configuration you use to style a cell in a grouped list.
Returns: a configuration for the specified state by applying the configuration’s default values for that state to any properties that you haven’t customized.
Variables: UIContentConfiguration contentConfiguration

Typ: UIListContentConfiguration
Meaning: A content configuration for a list-based content view.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe default configuration you use to style a cell in a grouped list.
Language: Objective-C

Variable: listContentConfiguration.textToSecondaryTextVerticalPadding
Meaning: The vertical padding between the text and secondary text.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Variables: UIListContentConfiguration listContentConfiguration
Extra: This value only applies when there’s both text and secondary text, and they’re in a stacked vertical layout.

Variable: listContentConfiguration.textToSecondaryTextHorizontalPadding
Meaning: The minimum horizontal padding between the text and secondary text.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Variables: UIListContentConfiguration listContentConfiguration
Extra: This value only applies when there’s both text and secondary text, and they’re in a side-by-side layout that prefersSideBySideTextAndSecondaryText specifies.

Variable: listContentConfiguration.imageToTextPadding
Meaning: The padding between the image and text.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Variables: UIListContentConfiguration listContentConfiguration

Variable: listContentConfiguration.prefersSideBySideTextAndSecondaryText
Meaning: whether the configuration positions the text and secondary text side by side.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Variables: UIListContentConfiguration listContentConfiguration

Variable: listContentConfiguration.directionalLayoutMargins
Meaning: The margins between the content and the edges of the content view.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Typ: NSDirectionalEdgeInsets
Variables: UIListContentConfiguration listContentConfiguration

Variable: listContentConfiguration.axesPreservingSuperviewLayoutMargins
Meaning: whether the content view preserves the layout margins that it inherits from its superview on the horizontal or vertical axes.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Typ: UIAxis
Variables: UIListContentConfiguration listContentConfiguration

Variable: listContentConfiguration.secondaryTextProperties
Meaning: Properties for configuring the secondary text.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Typ: UIListContentTextProperties
Variables: UIListContentConfiguration listContentConfiguration

Variable: listContentConfiguration.textProperties
Meaning: Properties for configuring the primary text.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Typ: UIListContentTextProperties
Variables: UIListContentConfiguration listContentConfiguration

Variable: listContentConfiguration.inageProperties
Meaning: Properties for configuring the image.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Typ: UIListContentImageProperties
Variables: UIListContentConfiguration listContentConfiguration

Variable: listContentConfiguration.secondaryAttributedText
Meaning: An attributed variant of the secondary text.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Variables: UIListContentConfiguration listContentConfiguration

Variable: listContentConfiguration.secondaryText
Meaning: The secondary text.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Variables: UIListContentConfiguration listContentConfiguration

Variable: listContentConfiguration.attributedText
Meaning: An attributed variant of the primary text.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Variables: UIListContentConfiguration listContentConfiguration

Variable: listContentConfiguration.text
Meaning: The primary text.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Variables: UIListContentConfiguration listContentConfiguration

Variable: listContentConfiguration.image
Meaning: The image to display.
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Variables: UIListContentConfiguration listContentConfiguration

Instruction: [UIListContentConfiguration
  cellConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Returns: the default configuration you use to style a cell in a list.

Instruction: [UIListContentConfiguration
  subtitleCellConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Returns: the default configuration you use to style a cell that’s in a list and contains subtitle text.

Instruction: [UIListContentConfiguration
  valueCellConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Returns: the default configuration you use to style a cell that’s in a list and contains side-by-side value text.

Instruction: [UIListContentConfiguration
  sidebarCellConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Returns: the default configuration you use to style a cell in a sidebar list.

Instruction: [UIListContentConfiguration
  sidebarSubtitleCellConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Returns: the default configuration you use to style a cell that’s in a sidebar list and contains subtitle text.

Instruction: [UIListContentConfiguration
  accompaniedSidebarCellConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Returns: the default configuration you use to style a cell in an accompanied sidebar list.

Instruction: [UIListContentConfiguration
  accompaniedSidebarSubtitleCellConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Returns: the default configuration you use to style a cell that’s in an accompanied sidebar list and contains subtitle text.

Instruction: [UIListContentConfiguration
  plainHeaderConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Returns: the default configuration you use to style a header in a plain list.

Instruction: [UIListContentConfiguration
  groupedHeaderConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Returns: the default configuration you use to style a header in a grouped list.

Instruction: [UIListContentConfiguration
  groupedFooterConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Returns: the default configuration you use to style a footer in a grouped list.

Instruction: [UIListContentConfiguration
  prominentInsetGroupedHeaderConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Returns: the default configuration you use to style a prominent header in an inset grouped list.

Instruction: [UIListContentConfiguration
  extraProminentInsetGroupedHeaderConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Returns: the default configuration you use to style an extra prominent header in an inset grouped list.

Instruction: [UIListContentConfiguration
  sidebarHeaderConfiguration
]
Page: https://developer.apple.com/documentation/uikit/views_and_controls?language=objcthe
Returns: the default configuration you use to style a header in a sidebar list.

Typ: UIConfigurationStateCustomKey
Meaning: A key that defines a custom state for a view.
Page: https://developer.apple.com/documentation/uikit/uiconfigurationstatecustomkey?language=objc
Language: Objective-C

Typ: UIConfigurationState
Meaning: The requirements for an object that encapsulates a view’s state.
Page: https://developer.apple.com/documentation/uikit/uiconfigurationstatecustomkey?language=objc
Language: Objective-C

Typ: configurationState.traitCollection
Meaning: The traits that describe the current layout environment of the view, such as the user interface style and layout direction.
Page: https://developer.apple.com/documentation/uikit/uiconfigurationstate/3600978-traitcollection?language=objc
Language: Objective-C
Variables: UIConfigurationState configurationState

Instruction: [configurationState
  customStateForKey:key
]
Page: https://developer.apple.com/documentation/uikit/uiconfigurationstate/3600978-traitcollection?language=objc
Returns: the custom state for the specified custom state key.
Variables: UIConfigurationState configurationState

Instruction: [configurationState
  setCustomState:customState
  forKey:key
]
Page: https://developer.apple.com/documentation/uikit/uiconfigurationstate/3600978-traitcollection?language=objc
Effect: Sets the custom state for the specified custom state key.
Variables: UIConfigurationState configurationState

Instruction: [configurationState
  objectForKeyedSubscript:key
]
Page: https://developer.apple.com/documentation/uikit/uiconfigurationstate/3600978-traitcollection?language=objc
Effect: ?
Variables: UIConfigurationState configurationState

Instruction: [configurationState
  setObject:obj
  forKeyedSubscript:key
]
Page: https://developer.apple.com/documentation/uikit/uiconfigurationstate/3600978-traitcollection?language=objc
Effect: ?
Variables: UIConfigurationState configurationState

Instruction: [configurationState
  initWithTraitCollection:traitCollection
]
Page: https://developer.apple.com/documentation/uikit/uiconfigurationstate/3600978-traitcollection?language=objc
Effect: a configuration state with the specified trait collection.
Variables: UIConfigurationState configurationState

Typ: UIViewConfigurationState
Meaning: An object that encapsulates a view’s state.
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc
Language: Objective-C
Variables: UIConfigurationState configurationState

Variable: viewConfigurationState.traitCollection
Meaning: The traits that describe the current layout environment of the view, such as the user interface style and layout direction.
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc
Typ: UITraitCollection
Variables: UIViewConfigurationState viewConfigurationState

Variable: viewConfigurationState.selected
Meaning: whether the view is in a selected state.
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc
Variables: UIViewConfigurationState viewConfigurationState

Variable: viewConfigurationState.highlighted
Meaning: whether the view is in a highlighted state.
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc
Variables: UIViewConfigurationState viewConfigurationState

Variable: viewConfigurationState.focused
Meaning: whether the view is in a focused state.
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc
Variables: UIViewConfigurationState viewConfigurationState

Variable: viewConfigurationState.disabled
Meaning: whether the view is in a disabled state.
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc
Variables: UIViewConfigurationState viewConfigurationState

Variable: viewConfigurationState.pinned
Meaning: whether the view is in a pinned state.
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc
Variables: UIViewConfigurationState viewConfigurationState

Variable: [viewConfigurationState
  initWithCoder:code
]
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc
Variables: UIViewConfigurationState viewConfigurationState

Instruction: [viewConfigurationState
  initWithTraitCollection:traitCollection
]
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc
Effect: a configuration state with the specified trait collection.
Variables: UIViewConfigurationState viewConfigurationState

Typ: UICellConfigurationState
Meaning: An object that encapsulates a cell’s state.
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc
Language: Objective-C
Subtype of: UIViewConfigurationState

Variable: UICellConfigurationState.editing
Meaning: whether the cell is in editing mode.
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc

Variable: UICellConfigurationState.swiped
Meaning: whether the cell is in a swiped state.
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc

Variable: UICellConfigurationState.expander
Meaning: whether the cell is in an expanded state, such as in an outline.
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc

Variable: UICellConfigurationState.reordering
Meaning: whether the cell is reordering.
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc

Variable: UICellConfigurationState.cellDragState
Meaning: The cell’s drag state.
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc
Typ: UICellConfigurationDragState

Variable: UICellConfigurationState.cellDropState
Meaning: The cell’s drop state.
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc

Typ: UICellConfigurationDragState
TypMeaning: Constants that describe the cell’s drag state.
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc
Language: Objective-C
Value: UICellConfigurationDragStateNone
The system has not associated the cell with a drag session.
Value2: UICellConfigurationDragStateLifting
A user interaction is lifting the cell, but it is not yet part of an active drag session.
Value3: UICellConfigurationDragStateDragging
The cell is part of an active drag session.

Typ: UICellConfigurationDropState
TypMeaning: UICellConfigurationDropState
Constants that describe the cell’s drop state.
Page: https://developer.apple.com/documentation/uikit/uiviewconfigurationstate?language=objc
Language: Objective-C
Value: UICellConfigurationDropStateNone
The system has not associated the cell with a drag session.
Value2: UICellConfigurationDropStateNotTargeted
A drag session is active and can perform a drop in the cell’s container, but the cell itself isn’t the drop target.
Value3: UICellConfigurationDropStateTargeted
The cell is the drop target for a drag session.