gpt4 book ai didi

ios - 触摸 GADBannerView subview 时 UIScrollView 不滚动

转载 作者:可可西里 更新时间:2023-11-01 03:26:30 25 4
gpt4 key购买 nike

我有一个使用 Google AdMob 广告 SDK 的项目。我正在尝试在主页上显示一些广告以及一些其他按钮,其中一些按钮位于屏幕下方。

我使用了 UIScrollView,并在 DFP 内部添加了一些 GADBannerView 以及按钮。广告加载正常,我可以毫无问题地点击广告和按钮。

问题是当我尝试滚动 ScrollView 时。如果我开始触摸广告 View , ScrollView 将不会滚动。如果我开始触摸其他任何地方,例如按钮或空白区域,则 ScrollView 会正确滚动。广告似乎以某种方式控制了触摸事件。

我已经尝试了各种修复方法,例如在广告上方创建一个透明的 UIView,但这没有用,因为点击不会注册。

我试过遍历 GADBannerView 的 subview ,但所有 subview 的类似乎都是 AdMob 专有的或无法访问。 (GADWebView, _UIWebViewScrollView)

我什至尝试将广告添加到 UITableView 以查看它是否会滚动到那里,但它也不起作用。

我的 View Controller 类非常大,所以如果您需要我发布一些代码,我可以创建一个示例应用程序来演示该问题。目前的解决方法是创建包含 HTML 广告代码的 UIWebView,而不是使用 GADBannerView。我已经对此进行了测试并且它有效,但我真的不想失去 native 方法的功能。

如果您开始触摸 GADBannerView 并允许广告保持可点击状态,是否有任何方法可以滚动 UIScrollView?

谢谢!

最佳答案

这个问题可以通过子类化 UIScrollView 来解决,遵循 UIGestureRecognizerDelegate 协议(protocol),并从中返回 YES

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer

您不需要设置委托(delegate);默认情况下,UIScrollView 已设置为其手势识别器的委托(delegate)。

关于ios - 触摸 GADBannerView subview 时 UIScrollView 不滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9475059/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com