Tôi đang cố lấy một số dữ liệu từ nội dung JSON (trong tệp data.swift của tôi) và gán nó cho "nhận xét ". Bất cứ ai biết những gì đang xảy ra sai ở đây và làm thế nào tôi có thể sửa chữa nó? Có vẻ như một vấn đề cú pháp mà tôi gặp rắc rối với.Không thể chỉ định giá trị kiểu '[String: AnyObject]' với chỉ mục loại 'Chuỗi'
Các lỗi Tôi nhận:
import UIKit
class CommentsTableViewController: UITableViewController {
var story = [String:AnyObject]()
var comments = [String:AnyObject]()
override func viewDidLoad() {
super.viewDidLoad()
comments = story["comments"]
tableView.estimatedRowHeight = 140
tableView.rowHeight = UITableViewAutomaticDimension
}
Nó không thích phần comments = story["comments"]
.
Cảm ơn Darren. Tôi đã làm như vậy và sau khi chạy nó bị rơi và đã cho tôi tin nhắn này: Không thể cast giá trị của loại 'Swift._SwiftDeferredNSArray' (0x10716fff0) để 'NSDictionary' (0x104b46d60). Mẹo về cách tiến hành? – hkhan
Lỗi thời gian chạy có nghĩa là 'câu chuyện [" ý kiến "]' thực sự chứa một mảng chứ không phải từ điển mà bạn đang mong đợi. Bạn có thể sử dụng trình gỡ rối để đặt điểm ngắt và kiểm tra nội dung của 'self.story' hoặc bạn có thể in nội dung bằng cách sử dụng' NSLog ("% @", self.story) '. Hoặc, bạn có thể khai báo 'self.comments' làm mảng thay vì từ điển (và thay đổi kiểu chữ phù hợp). – Darren