The tipView does not close itself when close button clicked but tells the tip by changing the value of 'shouldDisplayUpdates' property.
You can observe this property to add or remove a tip.
For TipUIView, you do not need to directly add the subview after viewDidLoad, just insert the following code after viewDidLoad to observe the tip status.
private var tipObservationTask: Task<Void, Never>?
tipObservationTask = tipObservationTask ?? Task { @MainActor in
for await shouldDisplay in catTracksFeatureTip.shouldDisplayUpdates {
if shouldDisplay {
// tells that a tip should display
// add your TipUIView instance and add layout constraints
} else {
// tells that a tip should dismiss, e.g. the user clicked closed
// remove your TipUIView instance
}
}
}
For TipUIPopoverViewController, try the same way by presenting and dismissing the TipUIPopoverViewController instance.
More reference please see https://developer.apple.com/documentation/tipkit/tipuipopoverviewcontroller