2012-03-20 10 views
8

私はルートビューコントローラ(UITableViewController)を備えたナビゲーションコントローラを持っています。このテーブルビューコントローラは、ルートビューコントローラとしてUITableViewControllerを持つ別のナビゲーションコントローラに対してモーダルセグを持っています。私のモーダルテーブルビューコントローラから、私はモデルビューを閉じ親ViewControllerから親UITableViewControllerにデータをリロードする方法

[self dismissModalViewControllerAnimated:YES]; 

を呼び出しています。モーダルビューを解除する前に、最初のUITableViewControllerにある「リフレッシュ」関数を呼び出しています。私は使用しようとしました

[self.parentViewController refresh]; 

しかし私はモーダルビューのナビゲーションコントローラを参照していると思いますか?それはその理由のために働いていないようです。

答えて

13

は、あなたの親ビューでNSNotificationCenterを作成します。

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(refresh) name:@"updateParent" object:nil]; 

あなたがモーダルビュー閉じたときに、それを呼び出す:

[[NSNotificationCenter defaultCenter] postNotificationName:@"updateParent" object:nil]; 
+2

スウィートを!チャームのように働いた!本当にありがとう! – jrble819

関連する問題