【问题标题】:Remove AdView from another class从另一个类中删除 AdView
【发布时间】: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。

【问题讨论】:

    标签: ios objective-c uiviewcontroller


    【解决方案1】:

    设计必须考虑到您想要影响其外观/行为的视图控制器尚未创建的(非常常见的)情况。

    为此,应用程序应记住用户偏好,并且在每个视图控制器中的 viewWillAppear 之类的内容上,如果设置了用户偏好(无广告),则调用您的 removeAds 代码。这可能是将代码放入所有视图控制器的公共超类的良好候选者。

    【讨论】:

      猜你喜欢
      • 2015-02-20
      • 2018-11-23
      • 1970-01-01
      • 2021-10-08
      • 1970-01-01
      • 2021-08-14
      • 1970-01-01
      • 2019-08-03
      • 1970-01-01
      相关资源
      最近更新 更多