【问题标题】:Set iAd Frame Origin in code在代码中设置 iAd Frame Origin
【发布时间】:2014-06-21 14:47:15
【问题描述】:

我有一个 iAd,我希望能够在代码中更改 y 轴上的位置。 这段代码调用并生成了广告:

- (void)bannerViewDidLoadAd:(ADBannerView *)banner {
    [UIWebView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:1];
    [banner setAlpha:1];
    [UIView commitAnimations];
}

我尝试通过执行以下操作来更改广告的位置:

banner.frame.origin.y += 100;

banner.frame.origin.y = 100;

但我总是留下错误: 表达式不可赋值

【问题讨论】:

  • origin 和 size 是只读的,应该直接使用 setFrame

标签: ios frame iad


【解决方案1】:

您不能直接在 UIView 上直接分配框架位置。你必须:

CGRect frame = banner.frame;
frame.origin.y += 100; //Or whatever change you want to perform.
banner.frame = frame;

如果您对为什么会发生这种情况感到好奇,请在 stackoverflow 上查看此答案: https://stackoverflow.com/a/7074522/1152596

【讨论】:

    猜你喜欢
    • 2020-12-10
    • 1970-01-01
    • 1970-01-01
    • 2019-03-03
    • 2020-03-09
    • 1970-01-01
    • 1970-01-01
    • 2018-12-12
    相关资源
    最近更新 更多