【问题标题】:Invalid suffix 'x50' on integer constant整数常量上的后缀“x50”无效
【发布时间】:2014-02-07 14:56:58
【问题描述】:

我正在将 MoPub 集成到我的应用程序中,但是当我应该在广告横幅上写下尺寸时遇到了以下错误: 整数常量上的后缀“x50”无效

self.adView = [[[MPAdView alloc] initWithAdUnitId:@"adUnitCode" size:320x50] autorelease];

如果按照MoPub所说的写大小不起作用,有谁知道我该怎么写?

【问题讨论】:

    标签: objective-c ads mopub


    【解决方案1】:

    方法签名是:

    - (id)initWithAdUnitId:(NSString *)adUnitId size:(CGSize)size
    

    因此您需要提供CGSize。这可以通过 CGSizeMake(320, 50) 或 MoPub 提供的常量来完成:MOPUB_BANNER_SIZE

    编写320x50 在编译器看来是一个无效整数,这就是问题描述的原因。


    因此,也消除了您的 ARC 问题,您需要导入常量

    #import "MPConstants.h"
    

    你的行将是:

    self.adView = [[MPAdView alloc] initWithAdUnitId:@"adUnitCode" size:MOPUB_BANNER_SIZE];
    

    【讨论】:

    • 谢谢@wain,但现在我收到以下错误:ARC forbids explicit message send of 'autorelease' 并且错误:'autorelease' is available: not available in automatic reference count mode.
    • 删除对autorelease的调用。请记住,您复制的代码需要针对您的情况进行验证,它并不总是“正常工作”。
    【解决方案2】:

    size: 参数需要一个 CGSize 结构,所以试试:

    self.adView = [[[MPAdView alloc] initWithAdUnitId:@"adUnitCode" 
                                                 size:CGSizeMake(320, 50)] autorelease];
    

    【讨论】:

      猜你喜欢
      • 2012-08-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-30
      • 2012-05-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多