25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.
 
 
 

53 satır
1.4 KiB

  1. // Copyright 2014 Google Inc. All Rights Reserved.
  2. #import "GADUNativeCustomTemplateAd.h"
  3. @implementation GADUNativeCustomTemplateAd
  4. - (instancetype)initWithAd:(GADNativeCustomTemplateAd *)nativeCustomTemplateAd {
  5. self = [super init];
  6. if (self) {
  7. _nativeCustomTemplateAd = nativeCustomTemplateAd;
  8. }
  9. return self;
  10. }
  11. - (NSString *)templateID {
  12. return [self.nativeCustomTemplateAd templateID];
  13. }
  14. - (NSString *)stringForKey:(NSString *)key {
  15. return [self.nativeCustomTemplateAd stringForKey:key];
  16. }
  17. - (UIImage *)imageForKey:(NSString *)key {
  18. return [self.nativeCustomTemplateAd imageForKey:key].image;
  19. }
  20. - (void)performClickOnAssetWithKey:(NSString *)key withCustomClickAction:(bool)customClickAction {
  21. if (customClickAction) {
  22. __weak GADUNativeCustomTemplateAd *weakSelf = self;
  23. [self.nativeCustomTemplateAd setCustomClickHandler:^(NSString *assetID) {
  24. [weakSelf didReceiveClickForAsset:key];
  25. }];
  26. }
  27. [self.nativeCustomTemplateAd performClickOnAssetWithKey:key];
  28. }
  29. - (void)didReceiveClickForAsset:(NSString *)key {
  30. if (self.didReceiveClickCallback) {
  31. self.didReceiveClickCallback(self.nativeCustomTemplateClient,
  32. [key cStringUsingEncoding:NSUTF8StringEncoding]);
  33. }
  34. }
  35. - (void)recordImpression {
  36. [self.nativeCustomTemplateAd recordImpression];
  37. }
  38. - (NSArray *)availableAssetKeys {
  39. return [self.nativeCustomTemplateAd availableAssetKeys];
  40. }
  41. @end