Я пытаюсь захватить значение textLabel.text ячейки в моем TableView и использовать nsuserdefaults, перенеся ее в другое представление. В этом окончательном представлении метка должна быть обновлена с захваченным значением.Обновление текста меток на основе ячейки textLabel
Вот мой код из TableViewController.swift, который фиксирует значение:
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
//actions that will proceed immediately a cell row is clicked
var cell = tableView.dequeueReusableCellWithIdentifier("Cell") as? PFTableViewCell
//here I do the capture
let captureCellVals = NSUserDefaults.standardUserDefaults()
captureCellVals.setValue(cell?.textLabel?.text, forKey: "restoname")
//code that transitions to the final view
let view2 = self.storyboard?.instantiateViewControllerWithIdentifier("finalView") as IndividualViewController
self.navigationController?.pushViewController(view2, animated: true)
}
И это код в окончательном зрения, что, как предполагается установить значение текста лейбла:
override func viewDidLoad() {
super.viewDidLoad()
let values = NSUserDefaults.standardUserDefaults()
let resname = values.valueForKey("restoname")
Restaurant.text = resname as? String
// Do any additional setup after loading the view, typically from a nib.
}
@IBOutlet var Restaurant: UILabel!
Но по какой-то причине, когда я запускаю его в симуляторе, он падает. Нет отчета об ошибке или ничего. Просто крушение. Любая помощь будет оценена, спасибо!
Так что я пробовал это, но все равно происходит то же самое. Однако, в левом нижнем углу Xcode это выглядит: само \t \t EatSafeDC.IndividualViewController 0x00007f96e2c80890 \t 0x00007f96e2c80890 значения \t \t NSUserDefaults 0x3ff0000000000000 \t 0x3ff0000000000000 ResName \t \t Строка «Я \ x89 \ xc3f \ x0foE \ x80AYf \ x0foM \ x90AXf \ x0foU \ xa0Yf \ x0fo] \ xb0Zf \ x0foe \ xc0^f \ x0fom \ xd0_f \ x0fou \ xe0Xf \ x0fo} \ xf0 \ xc9M9 \ xdbA \ xff \ xe3ffffff. \ x0f \ x1f \ x84 " –
Попробуйте распечатать строку перед ее хранением –
resname это уже String, нет необходимости бросать –