【发布时间】:2016-01-12 11:07:22
【问题描述】:
我正在 react-native 中为 google DFP 构建原生视图。我真的很接近成功,但缺少一点东西。
DFPAdViewManager.m:
#import "DFPAdView.h"
#import <UIKit/UIKit.h>
#import "DFPAdViewManager.h"
@implementation DFPAdViewManager
RCT_EXPORT_MODULE();
RCT_EXPORT_VIEW_PROPERTY(adUnitId, NSString)
RCT_EXPORT_VIEW_PROPERTY(adHeight, int)
RCT_EXPORT_VIEW_PROPERTY(adWidth, int)
- (UIView *)view
{
DFPAdView * theView;
theView = [[DFPAdView alloc] init];
return theView;
}
@end
DFPAdView.m:
#import "DFPAdView.h"
@import GoogleMobileAds;
@implementation DFPAdView
{
DFPBannerView *bannerView;
}
- (instancetype)init
{
self = [super init];
bannerView = [DFPBannerView alloc];
return self;
}
- (void)setAdHeight:(int*)adHeight
{
self.adHeight = adHeight;
}
- (void)setAdWidth:(int*)adWidth
{
self.adWidth = adWidth;
}
- (void)setAdUnitId:(NSString*)adUnitId
{
GADAdSize customAdSize = GADAdSizeFromCGSize(CGSizeMake(self.adWidth, self.adHeight));
bannerView = [[DFPBannerView alloc] initWithAdSize:customAdSize];
[self addSubview:bannerView];
UIViewController *controller = [[UIViewController alloc] init];
bannerView.adUnitID = adUnitId;
bannerView.rootViewController = controller;
DFPRequest *request = [DFPRequest request];
[bannerView loadRequest:request];
}
@end
我的问题是如何创建具有从 JavaScript 获得的 adHeight 和 adWidth 大小的横幅视图?我认为这只是 Objective-C 代码中的一个小改动,但我只是不知道也没有找到方法来做到这一点。
【问题讨论】:
-
嘿!你对这个主题有进一步了解吗?想分享结果吗?
-
是的,我提出了解决方案。它与上面的有点不同,但它工作正常。我会用答案来描述它;-)
-
请帮帮我!显示所有代码,因为我需要在我的应用中显示 DFP 广告
标签: ios objective-c iphone react-native