从另一个类中删除 AdView
Posted
技术标签:
【中文标题】从另一个类中删除 AdView【英文标题】:Remove AdView from another class 【发布时间】:2016-08-17 23:40:39 【问题描述】:我目前正在处理我的应用中的应用内购买,该应用在许多不同的视图中都有广告,但是当有人购买删除广告时,我想删除广告。这就是我现在正在做的事情:
每个类头中有FBAdView
然后我去我想删除它的地方。
PurchaseViewController.m
在界面中:
@property (copy, nonatomic) RVModelViewController *modelViewController;
@property (copy, nonatomic) RVExportViewController *exportViewController;
然后我们初始化它:
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self)
_modelViewController = [[RVModelViewController alloc] init];
_exportViewController = [[RVExportViewController alloc] init];
return self;
removeAds
方法:
- (IBAction)removeAds:(UIButton *)sender
// banner ads
FBAdView *banner1 = self.adView;
FbAdView*banner2 = _modelViewController.adView
// interstitial ads
FBAdView *int1 = self.adView2;
[banner1 removeFromSuperview];
// Banner 2 cant be removed as it is in another class
[banner2 removeFromSuperview];
[int1 removeFromSuperview];
你能帮帮我吗,我对 ios 编程还很陌生。我不知道如何从另一个类更改 UI。
【问题讨论】:
【参考方案1】:设计必须考虑到您想要影响其外观/行为的视图控制器尚未创建的(非常常见的)情况。
为此,应用程序应记住用户偏好,并且在每个视图控制器中的 viewWillAppear
之类的内容上,如果设置了用户偏好(无广告),则调用您的 removeAds
代码。这可能是将代码放入所有视图控制器的公共超类的良好候选者。
【讨论】:
以上是关于从另一个类中删除 AdView的主要内容,如果未能解决你的问题,请参考以下文章