gpt4 book ai didi

Swift - scrollViewDidScroll 不适用于 WKWebView

转载 作者:行者123 更新时间:2023-11-28 13:34:50 27 4
gpt4 key购买 nike

当用户使用 scrollViewDidScroll 滚动时,我正在尝试向我的(自定义)导航栏添加阴影,但它没有执行任何操作。我在另一个 View Controller 上有完全相同的代码,但它有一个 tableView 而不是 WKWebView 并且它工作正常。

我尝试添加 webView.scrollView.delegate = self 但我只是收到一个错误。

我的代码:

class ViewController: UIViewController {

@IBOutlet weak var webView: WKWebView!
@IBOutlet weak var navBar: UIView!

override func viewDidLoad() {
super.viewDidLoad()
addShadow()
}

func scrollViewDidScroll(_ scrollView: UIScrollView) {
let navigationBar = navBar
let offset = scrollView.contentOffset.y / 10
if offset > 1.5 {
navigationBar?.layer.shadowOpacity = 0.15
} else {
navigationBar?.layer.shadowOpacity = Float(((3 * offset) / 20)/1.5)
}
}

func addShadow() {
navBar.layer.shadowColor = UIColor.black.cgColor
navBar.layer.shadowOffset = CGSize(width: 0, height: 2.0)
navBar.layer.shadowRadius = 6.0
navBar.layer.masksToBounds = false
}
}

最佳答案

I tried adding webView.scrollView.delegate = self but I just get an error.

您没有分享错误是什么。我怀疑您没有将 View Controller 声明为 UIScrollViewDelegate符合,这在尝试将 self 设置为 ScrollView 委托(delegate)时导致编译时错误。

将您的 View Controller 声明更改为:

class ViewController: UIViewController, UIScrollViewDelegate {

关于Swift - scrollViewDidScroll 不适用于 WKWebView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56815307/

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