私は実際に私の2番目の週の迅速な初心者です。私はシンプルなコードを構築して自分のことを教えようとします。TableView、Array and segue
私は次のコントローラに移動する細胞のいずれかをクリックした場合、私はクラスや配列、
var cell = [Cell]()
override func viewDidLoad() {
super.viewDidLoad()
cell = [
Cell(Title:"cell1", number: 5),
Cell(Title:"cell2", number: 3),
Cell(Title:"cell3", number: 4),
]
// Do any additional setup after loading the view, typically from a nib.
}
を使用してテーブルを構築します。ここでの考え方は、すべてのセルはので、私は
セル[行] .NUMBER
次コントローラ
のにデータを渡したい唯一の違いは、セルの数である同じコントローラに私がかかりますfunc prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "next" {
if let indexPath = tableView.indexPathForSelectedRow {
let selectedcell = cell[indexPath.row]
let dest = (segue.destination as! UINavigationController).topViewController as! DetailViewController
dest.cells = selectedcell
}}
私の問題は、DetailViewControllerでセルを使用することができなかったことです。おそらく、配列などのデータを渡すためのコードです。私はテーブルを構築するときにセルの数としてcells.numberを使いたい。私は、各セルが異なるコントローラを指し示すようにすることで簡単な方法を知っていますが、大きなデータがあればそれは永遠にかかります。
は、私は問題はあなたが(私は複数から、仮定)細胞 - の配列を含む変数に1つのCellオブジェクトを渡すためにしようとしている
dest.cells = selectedcell
であると思い、あなたに
dest.cellsのデータ型は何ですか?それはCellの配列ですか?セルの配列にCellインスタンスを割り当てることはできません –
正確に何が問題になっていますか? – dirtydanee
あなたの問題は何ですか? – jalone