加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ios – 调用函数时swift中的EXC_BAD_ACCESS

发布时间:2020-12-14 17:15:07 所属栏目:百科 来源:网络整理
导读:我知道有很多关于这个错误的答案,但我似乎无法弄明白.我在调用函数的行上收到错误Thread 1:EXC_BAD_ACCESS(code = 257,address = 0x200000003).我的表格单元视图控制器如下. import UIKitclass NewsTableViewCell: UITableViewCell {@IBOutlet weak var pos
我知道有很多关于这个错误的答案,但我似乎无法弄明白.我在调用函数的行上收到错误Thread 1:EXC_BAD_ACCESS(code = 257,address = 0x200000003).我的表格单元视图控制器如下.

import UIKit

class NewsTableViewCell: UITableViewCell {

@IBOutlet weak var postImageView: CustomImageView!
@IBOutlet weak var postTitleLabel:UILabel!
@IBOutlet weak var authorLabel:UILabel!
@IBOutlet weak var dateLabel: UILabel!

var article: Article? {
        didSet {
            postTitleLabel.text = article?.title
            authorLabel.text = article?.author
            dateLabel.text = article?.date

            setupArticleImage()
        }
}
func setupArticleImage() {
         postImageView.loadImageUsingUrlString("http://theblakebeat.com/uploads/873463.jpg")
}

此代码调用函数loadImageUsingUrlString,该函数位于我的extensions.swift文件中.为每个加载的表视图单元调用它以加载其图像. extensions.swift的代码如下.

import UIKit

let imageCache = NSCache()

class CustomImageView: UIImageView {

    var imageUrlString: String?

    func loadImageUsingUrlString(urlString: String) {
        imageUrlString = urlString

        let url = NSURL(string: urlString)

        image = nil

        if let imageFromCache = imageCache.objectForKey(urlString) as? UIImage {
        self.image = imageFromCache
        return
    }

    NSURLSession.sharedSession().dataTaskWithURL(url!,completionHandler: { (data,respones,error) in

        if error != nil {
            print(error)
            return
        }

        dispatch_async(dispatch_get_main_queue(),{

            let imageToCache = UIImage(data: data!)

            if self.imageUrlString == urlString {
                self.image = imageToCache
            }

            imageCache.setObject(imageToCache!,forKey: urlString)
        })

    }).resume()
}

}

预先感谢您的任何帮助.

解决方法

您没有将类CustomImageView设置为IBInspector中的postImageView:

description

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读