@@ -358,6 +358,36 @@ typedef SWIFT_ENUM(NSInteger, TCFVersion, open) {
358
358
TCFVersionV2 = 2,
359
359
};
360
360
361
+
362
+ SWIFT_CLASS("_TtC8TeadsSDK16TagBinderBuilder")
363
+ @interface TagBinderBuilder : NSObject
364
+ - (nonnull instancetype)init SWIFT_UNAVAILABLE;
365
+ + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
366
+ /// A non-zero tag for the title label view to be rendered. The maximum length will be 50 characters.
367
+ /// UIView element should be a <code>UILabel</code>
368
+ @property (nonatomic) NSInteger titleLabelTag;
369
+ /// A non-zero tag for content / body / description label view to be rendered. The maximum length will be 150 characters.
370
+ /// UIView element should be a ``UILabel```
371
+ @property (nonatomic) NSInteger contentLabelTag;
372
+ /// A non-zero tag for media content view to be rendered.
373
+ /// UIView element must be a <code>TeadsMediaView</code>
374
+ @property (nonatomic) NSInteger mediaViewTag;
375
+ /// A non-zero tag for icon image view to be rendered.
376
+ /// UIView element must be a <code>UIImageView</code>
377
+ @property (nonatomic) NSInteger iconImageViewTag;
378
+ /// A non-zero tag for advertiser label view to be rendered. The maximum length will be 25 characters.
379
+ /// UIView element should be a <code>UILabel</code>
380
+ @property (nonatomic) NSInteger advertiserLabelTag;
381
+ /// A non-zero tag for call to action button view to be rendered. The maximum length will be 15 characters.
382
+ /// UIView element should be a <code>UIButton</code>
383
+ @property (nonatomic) NSInteger callToActionButtonTag;
384
+ /// A non-zero tag for star rating content view to be rendered.
385
+ @property (nonatomic) NSInteger ratingViewTag;
386
+ /// A non-zero tag for price content view to be rendered.
387
+ /// UIView element should be a <code>UILabel</code>
388
+ @property (nonatomic) NSInteger priceLabelTag;
389
+ @end
390
+
361
391
@class TeadsAdPlacementSettings;
362
392
@protocol TeadsInReadAdPlacementDelegate;
363
393
@class TeadsInReadAdPlacement;
@@ -1053,6 +1083,14 @@ SWIFT_CLASS("_TtC8TeadsSDK17TeadsNativeAdView")
1053
1083
/// \param ad The ad that should be binded to the ad view.
1054
1084
///
1055
1085
- (void)bind:(TeadsNativeAd * _Nonnull)ad;
1086
+ /// Binds the native asset ad views to this native ad using view tags binder
1087
+ /// important:
1088
+ /// This call is mandatory in order to monitor ad viewability of each components
1089
+ /// \param ad The ad that should be binded to the ad view.
1090
+ ///
1091
+ /// \param binder Binds the native asset ad views to this native ad using view tags.
1092
+ ///
1093
+ - (void)bind:(TeadsNativeAd * _Nonnull)ad tagBinder:(SWIFT_NOESCAPE void (^ _Nonnull)(TagBinderBuilder * _Nonnull))tagBinder;
1056
1094
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
1057
1095
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
1058
1096
@end
@@ -1101,13 +1139,13 @@ SWIFT_PROTOCOL("_TtP8TeadsSDK18TeadsSoundDelegate_") SWIFT_UNAVAILABLE_MSG("'Tea
1101
1139
1102
1140
1103
1141
1142
+
1104
1143
@interface UIButton (SWIFT_EXTENSION(TeadsSDK))
1105
1144
- (void)bindWithComponent:(CommonComponent * _Nullable)component;
1106
1145
@end
1107
1146
1108
1147
1109
1148
1110
-
1111
1149
@interface UIImageView (SWIFT_EXTENSION(TeadsSDK))
1112
1150
- (void)bindWithComponent:(CommonComponent * _Nullable)component;
1113
1151
@end
@@ -1119,6 +1157,7 @@ SWIFT_PROTOCOL("_TtP8TeadsSDK18TeadsSoundDelegate_") SWIFT_UNAVAILABLE_MSG("'Tea
1119
1157
1120
1158
1121
1159
1160
+
1122
1161
@interface UIView (SWIFT_EXTENSION(TeadsSDK))
1123
1162
/// map your UIKit element to TeadsSDK logic,
1124
1163
/// this ensures visibility measurement is monitored and click behaviors are well handled
@@ -1509,6 +1548,36 @@ typedef SWIFT_ENUM(NSInteger, TCFVersion, open) {
1509
1548
TCFVersionV2 = 2,
1510
1549
};
1511
1550
1551
+
1552
+ SWIFT_CLASS("_TtC8TeadsSDK16TagBinderBuilder")
1553
+ @interface TagBinderBuilder : NSObject
1554
+ - (nonnull instancetype)init SWIFT_UNAVAILABLE;
1555
+ + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
1556
+ /// A non-zero tag for the title label view to be rendered. The maximum length will be 50 characters.
1557
+ /// UIView element should be a <code>UILabel</code>
1558
+ @property (nonatomic) NSInteger titleLabelTag;
1559
+ /// A non-zero tag for content / body / description label view to be rendered. The maximum length will be 150 characters.
1560
+ /// UIView element should be a ``UILabel```
1561
+ @property (nonatomic) NSInteger contentLabelTag;
1562
+ /// A non-zero tag for media content view to be rendered.
1563
+ /// UIView element must be a <code>TeadsMediaView</code>
1564
+ @property (nonatomic) NSInteger mediaViewTag;
1565
+ /// A non-zero tag for icon image view to be rendered.
1566
+ /// UIView element must be a <code>UIImageView</code>
1567
+ @property (nonatomic) NSInteger iconImageViewTag;
1568
+ /// A non-zero tag for advertiser label view to be rendered. The maximum length will be 25 characters.
1569
+ /// UIView element should be a <code>UILabel</code>
1570
+ @property (nonatomic) NSInteger advertiserLabelTag;
1571
+ /// A non-zero tag for call to action button view to be rendered. The maximum length will be 15 characters.
1572
+ /// UIView element should be a <code>UIButton</code>
1573
+ @property (nonatomic) NSInteger callToActionButtonTag;
1574
+ /// A non-zero tag for star rating content view to be rendered.
1575
+ @property (nonatomic) NSInteger ratingViewTag;
1576
+ /// A non-zero tag for price content view to be rendered.
1577
+ /// UIView element should be a <code>UILabel</code>
1578
+ @property (nonatomic) NSInteger priceLabelTag;
1579
+ @end
1580
+
1512
1581
@class TeadsAdPlacementSettings;
1513
1582
@protocol TeadsInReadAdPlacementDelegate;
1514
1583
@class TeadsInReadAdPlacement;
@@ -2204,6 +2273,14 @@ SWIFT_CLASS("_TtC8TeadsSDK17TeadsNativeAdView")
2204
2273
/// \param ad The ad that should be binded to the ad view.
2205
2274
///
2206
2275
- (void)bind:(TeadsNativeAd * _Nonnull)ad;
2276
+ /// Binds the native asset ad views to this native ad using view tags binder
2277
+ /// important:
2278
+ /// This call is mandatory in order to monitor ad viewability of each components
2279
+ /// \param ad The ad that should be binded to the ad view.
2280
+ ///
2281
+ /// \param binder Binds the native asset ad views to this native ad using view tags.
2282
+ ///
2283
+ - (void)bind:(TeadsNativeAd * _Nonnull)ad tagBinder:(SWIFT_NOESCAPE void (^ _Nonnull)(TagBinderBuilder * _Nonnull))tagBinder;
2207
2284
- (nonnull instancetype)initWithFrame:(CGRect)frame OBJC_DESIGNATED_INITIALIZER;
2208
2285
- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
2209
2286
@end
@@ -2252,13 +2329,13 @@ SWIFT_PROTOCOL("_TtP8TeadsSDK18TeadsSoundDelegate_") SWIFT_UNAVAILABLE_MSG("'Tea
2252
2329
2253
2330
2254
2331
2332
+
2255
2333
@interface UIButton (SWIFT_EXTENSION(TeadsSDK))
2256
2334
- (void)bindWithComponent:(CommonComponent * _Nullable)component;
2257
2335
@end
2258
2336
2259
2337
2260
2338
2261
-
2262
2339
@interface UIImageView (SWIFT_EXTENSION(TeadsSDK))
2263
2340
- (void)bindWithComponent:(CommonComponent * _Nullable)component;
2264
2341
@end
@@ -2270,6 +2347,7 @@ SWIFT_PROTOCOL("_TtP8TeadsSDK18TeadsSoundDelegate_") SWIFT_UNAVAILABLE_MSG("'Tea
2270
2347
2271
2348
2272
2349
2350
+
2273
2351
@interface UIView (SWIFT_EXTENSION(TeadsSDK))
2274
2352
/// map your UIKit element to TeadsSDK logic,
2275
2353
/// this ensures visibility measurement is monitored and click behaviors are well handled
0 commit comments