2011-07-29 11 views
0

私はビューを開始します。オブジェクトの配列はメモリから読み込まれ、オブジェクトとともにテーブルビューが完成します。別のビューに移動して別のオブジェクトをファイルに書き込んで最初のビューに戻すと、オブジェクトはファイルから配列にロードされますが、何らかの形でリロードされません。[myTableView reloadData]は機能しません。 setNeedsDisplayUIViewをリロードする

-(void)viewWillAppear:(BOOL)animated 
{ 
    contactsToLayNow=[NSKeyedUnarchiver unarchiveObjectWithFile:fPath()]; 

    NSLog(@"NOW IN VIEW WILL APPEAR"); 
    for(Contact *cn in contactsToLayNow) 
    { 
     NSLog(@"%@", cn.fName); 
    } 
    //[self.view setNeedsDisplay]; 

    [quickDialTableView reloadData]; //MOREOVER EXCEPTION HERE IS THROWN 
    [super viewWillAppear:YES]; 


} 
+0

NSLogは機能しますか? 'quickDialTableView'はどこでどのように宣言されていますか?例外がスローされた場合は、それ以上アクセスできない可能性があります。 – Cyrille

+0

例外は何ですか?あなたのviewWillAppearメソッドの初めにsuperへの呼び出しを行うべきではありませんか? – onnoweb

+0

はい、それは、はい、NSLogが期待されるデータを表示すると宣言されています。それは例外ではない、コンソールへの例外ログなしのクラッシュだ。 –

答えて

0
viewWillAppear:方法の最初の行にあなたの [super viewWillAppear:animated];を移動

0

あなたがcontactsToLayNowを保持する必要があります - 私はそれはあなたのtableViewsの描画:)それは必須ではありません

contactsToLayNow = [[NSKeyedUnarchiver unarchiveObjectWithFile:fPath()] retain]; 

PS中にいつか自動解放さだと思うが、あなたはこの方法の一番上にスーパーにお電話を置く必要があります;)

関連する問題