で別のViewControllerコンポーネントにフォースは、私はNSTableViewとメインコントローラを持っている...私は2ビューコントローラ間のトリガーを渡すためにしようとしているが、私は働く何かを見つけることができません迅速
を更新し、ソースがリンク、ビューベース。
メインコントローラクラス:
class ViewController: NSViewController {
私はグローバル変数で定義された配列を持っています。 viewDidLoadの 私の配列に2つの要素を追加してから、setDelegateとsetDataSourceを使用します。 正常に動作します。
myLib.myCoins = fillCoinsTable()
print ("My lib has \(myLib.myCoins.count) objects ")
mainCoinTable.setDelegate(self)
mainCoinTable.setDataSource(self)
私は、WINDOWS CONTROLLERから2番目のView Controllerまでのセグを持っています。 (これはツールバーのボタンです)。 segueは "シート"種類です。
この第2のコントローラーを使用すると、グローバル変数配列にボタンを「保存」して要素を追加できます。第二のコントローラ上の
コード
@IBAction func addCoinButton(sender: AnyObject) {
//We add the coin
let newCoin:coin = coin(n: textName.stringValue)
newCoin.Year = Int.init(textYear.stringValue)
myLib.myCoins.append(newCoin)
self.dismissController(self)
}
私はテーブルビューのreloadDataにメインコントローラ、上のボタンを追加した場合、それが正常に動作します。 3番目の要素が追加されます。
が、私はそれは自動になりたい....
Iはセグエを試みたが、鉱山は、ビューコントローラとの間が、Windowsコントローラではありません。
助けてもらえますか?あなたは、テーブルを自動的にリロードしたい場合はViewが、私は考えてviewWillAppear
self.tableView.performSelectorOnMainThread(#selector(UITableView.reloadData), withObject: nil, waitUntilDone: true)
それは完全に動作します!おかげで多く –
ようこそメイト:)ハッピーコーディング:) –