MoEngageInAppLabelWidget
@objcMembers
@MainActor
public class MoEngageInAppLabelWidget : UILabel
Label widget for displaying text in InApp campaigns. Supports multi-line text, dynamic font scaling, custom padding, and tap actions.
-
The widget model containing style, content, and actions
Declaration
Swift
@MainActor public var widgetModelObj: MoEngageInAppWidget -
The campaign ID associated with this widget
Declaration
Swift
@MainActor public var campaignID: String -
The starting position for widget layout calculations
Declaration
Swift
@MainActor public var startPosition: CGPoint -
The calculated end position for subsequent widget layout
Declaration
Swift
@MainActor public var endPosition: CGPoint -
The data source for font resources and other configuration
Declaration
Swift
@MainActor public weak var dataSource: MoEngageInAppViewDataSource?
-
Initializes the label widget with widget configuration and layout parameters.
Declaration
Swift
@MainActor public init( withInAppWidget widget: MoEngageInAppWidget, inContainer viewContainer: UIView, withStartPosition startPos: CGPoint, andCampaignID campaignID: String )Parameters
widgetThe widget model containing style, content, and actions
viewContainerThe parent container view for layout calculations
startPosThe starting position for the widget
campaignIDThe campaign identifier
-
Declaration
Swift
@MainActor public required init?(coder: NSCoder)
-
Overrides text drawing to apply content insets (padding).
Declaration
Swift
@MainActor public override func drawText(in rect: CGRect)Parameters
rectThe rectangle in which to draw the text