FUIAvatarsView
@MainActor
open class FUIAvatarsView : FUIDrawingView
FUIAvatarsView
is a container for a group of avatars with .grouped
or .horizontal
layout. It’s used as an inner view in FUIAvatarStack
.
Example Initialization and Configuration:
let avatarsView = FUIAvatarsView()
avatarsView.avatars = ["1", UIImage(systemName: "person")!]
avatarsView.layout = .grouped
avatarsView.sideLength = 30
avatarsView.isCircular = true
avatarsView.borderWidth = 1
avatarsView.borderColor = UIColor.red
avatarsView.avatarsContentMode = .scaleAspectFit
Theming
Supported ImageView
class paths:
// Avatars at different index.
fdlFUIAvatarStack_avatar_0 {}
fdlFUIAvatarStack_avatar_1 {}
//
fdlFUIAvatarStack_avatar {}
Supported IMAGE
class paths for FUIAvatarsView
:
fdlFUIAvatarsView_avatar_0 {}: Image theme for first image.
fdlFUIAvatarsView_avatar_1 {}: Image theme for second image.
fdlFUIAvatarsView_avatar {}: Image theme for other images.
Supported Image
attributes:
image-name: String;
tint-color: Color;
font-color: Color;
background-color: Color;
content-mode: ContentMode
-
Layout for avatars in the stack.
See moregrouped
andhorizontal
are available. The default is.horizontal
.Declaration
Swift
public enum Layout
-
List of images for avatar view.
Declaration
Swift
@MainActor public var avatars: [FUIGlyphImage] { get set }
-
List of image containers instances.
Declaration
Swift
@MainActor public private(set) var avatarsImageViews: [FUIImageView] { get }
-
Side length of avatars. The default is
30
.Declaration
Swift
@MainActor public var sideLength: CGFloat { get set }
-
Maximum number of avatars. The default is
nil
.Declaration
Swift
@MainActor public var maxCount: Int? { get set }
-
Layout for avatars in the stack. The default is
.grouped
.Declaration
Swift
@MainActor public var layout: Layout { get set }
-
Content mode for avatars. Default is
.scaleAspectFit
.Declaration
Swift
@MainActor public var avatarsContentMode: UIView.ContentMode? { get set }
-
UIColor
for avatar border color. Default isclear
.Declaration
Swift
@MainActor public var borderColor: UIColor { get set }
-
Dimensions of avatars border width. Default is
0
.Declaration
Swift
@MainActor public var borderWidth: CGFloat { get set }
-
For horizontal layout, the spacing between avatars.
Declaration
Swift
@MainActor public var spacing: CGFloat { get set }
-
Specifies whether the
avatars
are drawn as circular. The default istrue
.Declaration
Swift
@MainActor public var isCircular: Bool { get set }
-
Handler is invoked in this view’s layout process.
Declaration
Swift
@MainActor public var isDirtyHandler: (() -> Void)?