archakov06
@archakov06
Frontend-разработчик (ReactJS)

Как передать массив из 1-ViewController во второй?

В общем я начинаю только кодить на swift'е и после длительных чтений статей на англ, мне удалось передать из 1 VC переменную во второй VC. Но на данный момент, я решил передавать массив строк, однако компилятор отказывается принимать массив, а если установить [[String]], то компилирует, но уже какая-то другая ошибка.

Could not cast value of type '__NSDictionaryM' (0x102d6e8a8) to 'NSArray' (0x102d6e470).


VC1:
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
        
        let cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as! UITableViewCell
        
        let row = indexPath.row
        if let navn = self.person[indexPath.row]["name"] as? NSString {
            cell.textLabel?.text = navn as String
        } else {
            cell.textLabel?.text = "No Name"
        }
        
        return cell
        
    }


VC2:
//
//  ViewController2.swift
//  test2
//
//  Created by Archakov on 01.09.15.
//  Copyright (c) 2015 Archakov. All rights reserved.
//

import UIKit

class ViewController2: UIViewController {
    
    var person: [[String]] = [];
    
    @IBOutlet weak var lbName: UILabel!
    @IBOutlet weak var scroll: UIScrollView!
    
    @IBAction func hidebutton(sender: AnyObject) {
        //self.navigationController!.popToRootViewControllerAnimated(true)
        
    }
    
    override func viewDidLoad() {
        super.viewDidLoad()
        println(person[0][0]);
        //let navn = self.person[0]["name"] as? [String]
        //lbName.text = navn as String
        scroll.contentSize.height = 500
    }
    
}
  • Вопрос задан
  • 329 просмотров
Пригласить эксперта
Ответы на вопрос 1
petruska
@petruska
IOS Developer
в коде создай новый контроллер
задай как проперти нужный массив (в новом контроллере будет проперти с приним массивом)
перейди на него
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы