【问题标题】:WKWebView in UITableViewCustomCell not workingUITableViewCustomCell 中的 WKWebView 不起作用
【发布时间】:2015-07-19 16:10:40
【问题描述】:

我想在自定义单元格中显示一个网页并编写如下代码,但我无法让它工作。

应用程序在“self.webView!.navigationDelegate = self”行崩溃,提示“线程 1:EXC_BAD_INSTRUCTION_i386_INVOP, subcode=0x0”。

如果我注释掉这一行,我可以构建它,但应用程序什么也不显示。 (这个单元格的高度变为零,我看不到任何内容。)

我将不胜感激。

ContentViewController.swift(带有 UITableView 的视图控制器)

if indexPath.section == 0 {
  var cell : ArticleWKWebViewCustomCell = tableView.dequeueReusableCellWithIdentifier("ArticleWKWebViewCustomCell") as! ArticleWKWebViewCustomCell

            return cell
        }
else ....(abbreviated)      

ArticleWKWebViewCustomCell.swift 导入 UIKit 导入 WebKit

class ArticleWKWebViewCustomCell: UITableViewCell, WKNavigationDelegate {

    @IBOutlet weak var view: UIView!
    var webView: WKWebView?

    override func awakeFromNib() {
        super.awakeFromNib()

         self.webView!.navigationDelegate = self

        self.webView = WKWebView()
        view.addSubview(self.webView!)

        let url = NSURL(string:"http://www.yahoo.co.jp")
        let request = NSURLRequest(URL: url!)
        self.webView!.loadRequest(request)
    }

    func webView(webView: WKWebView, didFinishNavigation navigation: WKNavigation!) {
        println("Finished navigating to url")
    }

    override func setSelected(selected: Bool, animated: Bool) {
        super.setSelected(selected, animated: animated)

        // Configure the view for the selected state
    }

}

【问题讨论】:

    标签: ios swift uitableview tableviewcell wkwebview


    【解决方案1】:

    多亏了我朋友的建议,我解决了。 我发现我需要为 webView 设置框架的大小。 我在view.addSubview(self.webView!)之后添加了下面的代码

    self.webView?.frame = CGRectMake(0, 0, CGRectGetWidth(view.frame), CGRectGetHeight(view.frame))
    

    【讨论】:

      猜你喜欢
      • 2018-11-06
      • 2023-02-17
      • 2018-07-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-12
      相关资源
      最近更新 更多