收藏
回答

在onResize回调里设置BannerAd 的style.left 在真机无效。在开发者工具里有效

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小游戏 Bug Banner广告 微信iOS客户端 7.0.12 2.10.4

在onResize回调里设置BannerAd 的style.left 在真机无效。在开发者工具里有效

回答关注问题邀请回答
收藏

4 个回答

  • 小游戏运营专员 - 宏
    小游戏运营专员 - 宏
    2020-04-02

    你好,请具体描述问题出现的流程,并提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

    2020-04-02
    有用
    回复 1
    • autumn
      autumn
      2020-04-02
      就是在onRiseze回调方法里

      设置banner.style.left= (screenWidth - banner.style.realWidth) *0.5

      这是在开发者工具里的效果



      这是在手机上的效果
      2020-04-02
      回复
  • Forever
    Forever
    2020-04-09

    各位开发者注意,BannerAd是有最小和最大临界值的,在最小和最大临界值这个区间内修改width才能保证触发onResize回调。最小临界值是300,最大临界值是800,但是当windowWidth小于800时,那么最大临界值就是windowWidth。

    特殊情况:当某一次修改width的值小于最小临界值时,注意这一次的修改是会发生onResize回调,不过要在下一次修改width的值时不能小于最小临界值,不然是不会发生onResize回调。而当某一次修改width的值大于最大临界值时,同理。


    2020-04-09
    有用 1
    回复
  • 没什么
    没什么
    2020-06-08

    我刚刚也碰到了这个问题,经过确认,必须在wx.createBannerAd 方法中将style 4个变量全部声明一次,否则在后面赋值就是无效的

    2020-06-08
    有用 1
    回复 1
    • yx
      yx
      2021-09-23
      +1
      2021-09-23
      回复
  • autumn
    autumn
    2020-04-02

    就是在onRiseze回调方法里

    设置banner.style.left= (screenWidth - banner.style.realWidth) *0.5

    这是在开发者工具里的效果


    这是在手机上的效果


    2020-04-02
    有用
    回复 4
    • Forever
      Forever
      2020-04-02
      只有ios系统才会发生吗?
      2020-04-02
      回复
    • autumn
      autumn
      2020-04-02回复Forever
      是的
      2020-04-02
      回复
    • 科本
      科本
      2020-04-07回复autumn
      可以提供个简单的demo吗
      2020-04-07
      回复
    • 科本
      科本
      2020-04-09回复autumn
      麻烦看看onResize事件有没有触发
      2020-04-09
      回复
登录 后发表内容
问题标签