2012-01-21 10 views
0

私はこの問題に関する同様の問題と解決策を読んだが、役に立たなかった。 3つのUIViewControlersアプリがあるとしましょう。戻るときに画像が変わらない

    ビュー2では、赤色/緑色(オン/オフ)の画像(.png)を配置しました。 1 =緑、それ以外の場合は赤、DBから取得するint。それは私のためにうまく動作します。

  1. 私はUISwitcherを使用してintを値1または0に切り替えることができます。

問題です。 #3から#2のビューに戻ると、ピクチャは変わりません。 #1を表示して#2に戻ると、画像が変更されます。

- (void)viewDidLoad methodでデータを取得しています。私はその間実行しようとしました何

が追加されている方法- (void)viewWillAppear:(BOOL)animated

- (void)viewWillAppear:(BOOL)animated { 
    [super viewWillAppear:animated]; 
    [self.tableView reloadData]; 
} 

はまた、私は- (void)viewWillAppear:(BOOL)animatedで、データベースのメソッドを呼び出そうとしました。

ああ、助けにならない。

これを読んで私を助けてくれてありがとう。

+0

スクリーンショットを表示して説明できますか?それは私を混乱させます。 – Sarah

答えて

0

あなたは[NSNotification defaultcenter]

1)で使用して通知int..post変更..when ビュー2レジスタは、ビュー3にint型の値changed..andの通知を取得するようにしてくださいビューののdeallocで見る2

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(intChanged) name:@"Int Changed" object:nil]; 

2)ののviewDidLoad 2

int型の値が変更されたときにビュー3では
[[NSNotificationCenter defaultCenter] removeObserver:self]; 

3)ビュー2でend..intChanged方法()で、このラインを置く

[[NSNotificationCenter defaultCenter] postNotificationName:@"Int Changed" object:nil userInfo:nil]; 

後にint型に変更..whenが呼び出されますビュー3 ビュー2でintChangedメソッドを定義していることを確認してください。

+0

おっと...私はただ飛ぶことを学んでいます。あなたは私に例/チュートリアルのやり方を教えてもらえますか? – NCFUSN

+0

done ..私の答えをもう一度チェックしてください – Shubhank

+0

私はcustomviewcellを使用します。 ItemsCustomViewCell.mのどこかに実装する必要があると思いますか? – NCFUSN

関連する問題