gpt4 book ai didi

ios - 将 WebView 与 Firebase 数据库结合使用

转载 作者:行者123 更新时间:2023-11-30 11:21:12 24 4
gpt4 key购买 nike

最近在我的应用中,我一直在使用 Firebase 来存储我的应用的信息,并且效果良好。现在我使用它来流式传输视频,并在表格 View 中使用 Web View 来显示 Youtube 视频。当尝试将 WebView 链接到数据库时,我收到一条错误消息:

Type 'video' has no subscript members

什么原因会导致这种情况?

这是代码:

import UIKit

import Firebase

class videoController: UIViewController, UITableViewDelegate, UITableViewDataSource {
var ref = DatabaseReference()
var video = [UIWebView]()
var databaseHandle:DatabaseHandle = 0

@IBOutlet var videoController: UITableView!

override func viewDidLoad() {
super.viewDidLoad()

ref = Database.database().reference()

databaseHandle = ref.child("Videos").observe(.childAdded) { (snapshot) in
let post = snapshot.value as? UIWebView
if let actualPost = post {
self.video.append(actualPost)
self.videoController.reloadData()
}
}
}

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return video.count
}

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let video = tableView.dequeueReusableCell(withIdentifier: "video") as! video
video.videos.allowsInlineMediaPlayback = video[indexPath.row]

return(video)
}
}

最佳答案

这一行:

let video = tableView.dequeueReusableCell(withIdentifier: "video") as! video

是你的问题。这将创建一个名为 video 的新局部变量,并隐藏您的 video 数组属性。将其更改为:

let videoCell = tableView.dequeueReusableCell(withIdentifier: "video") as! video

这是整个方法:

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let videoCell = tableView.dequeueReusableCell(withIdentifier: "video") as! video
videoCell.videos.allowsInlineMediaPlayback = video[indexPath.row]

return videoCell
}

但除此之外,为什么会有一系列 WebView ?您肯定无法从 Firebase 获得 WebView 。

请修正您的命名约定。类、结构和枚举名称应以大写字母开头。变量、函数和大小写名称以小写字母开头。并使用描述性名称。将所有内容简单地命名为 video 会令人困惑。

并将您的 video 数组更改为 videos

关于ios - 将 WebView 与 Firebase 数据库结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51254758/

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