如何解决UITableViewCell 中的 WKWebView 需要一些时间来加载仅第一个单元格加载
我有一个包含 UITableViewCell
的 WKWebView
(我的目标是显示单元格中的 YouTube 视频)。
这是我尝试过的:
import UIKit; import WebKit
class ViewController: UIViewController {
var displayCell = false {
didSet { updateView() }
}
@IBOutlet weak var tableView: UITableView! {
didSet { tableView.register(UINib(nibName: "VideoCell",bundle: .main),forCellReuseIdentifier: "VideoCell") }
}
@IBAction func tapped() {
displayCell.toggle()
updateView()
}
private func updateView() {
tableView.reloadData()
}
}
extension ViewController: UITableViewDataSource,UITableViewDelegate {
func tableView(_ tableView: UITableView,cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "VideoCell",for: indexPath) as! VideoCell
if let url = URL(string: "https://www.youtube.com/embed/qxWwEPeUuAg") {
cell.wkWebView.load(URLRequest(url: url))
}
return cell
}
func tableView(_ tableView: UITableView,heightForRowAt indexPath: IndexPath) -> CGFloat {
200
}
func tableView(_ tableView: UITableView,numberOfRowsInSection section: Int) -> Int {
displayCell ? 1 : 0
}
}
final class VideoCell: UITableViewCell {
@IBOutlet weak var wkWebView: WKWebView!
}
点击按钮隐藏或显示第一个单元格。我意识到显示视频单元格时会出现延迟,但只是第一次。我什至没有加载 URL 就尝试过,延迟仍然发生。所以我猜当应用程序第一次缓存单元格时 WKWebView
有问题,当单元格出列时不会再发生这种情况。但我找不到什么。
你能帮我吗?非常感谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。