2012-04-19 4 views
0

これはappdelegateとviewcontrollerだけを扱う非常にシンプルなインターフェースです。エラーなしでUITableViewがクラッシュする

私は、指定された患者に対して1から13の画像サムを表示するUITableViewを持っています。私は親を表示する単一のUIImageViewを含むカスタムセルを使用しています。セル内のUIImageViewは、HTTPリクエストを介してロードされたNSMutableArrayからcellForRowAtIndexPathにロードされます。

HTTPサーバー上の各患者の親指は、患者フォルダにあり、1〜3個の名前付きシリーズフォルダにグループ化されています。 iPadのpopOverから患者を選択すると、親指のテーブルビューには、HTTPサーバーのpatientsフォルダにある最初のシリーズがロードされます。

ユーザは、シリーズ名のpopOverから患者の別のシリーズを選択できます。選択したシリーズの親指がHTTPリクエストを介して取得され、親指テーブルビューに読み込まれます。

患者はpopOverの患者を摘出した後に最初のシリーズを取得したが、シリーズを変更したり、すでにロードされているシリーズを再選択したりすると、アプリがクラッシュすることがあります。シミュレータではクラッシュしませんが、iPadのみです。 xCodeから実行すると、コンソールにエラーが表示されずにcellForRowAtIndexPathの最後の呼び出しが終了した後にクラッシュが発生することがわかります。私がその点を踏むとすぐにクラッシュします。

私はappdelegateメソッドとviewControllerメソッドの両方でメモリ警告デリゲートメソッドを実装しました。私はメモリの警告を取得していません。

下記のcellForRowAtIndexPathメソッドを投稿しています。テーブルビューを読み込む際に何か不足している場合に備えてです。

私は、メモリの他に何が疑わしいかの提案を探しています。コンソールなしでクラッシュを引き起こしていることについて何らかの方法で表示できますか?任意のヘルプ

を事前に

おかげジョン

アップデート:私は問題ではありません切断法、内の行の私の電話番号を追加しました。

私は現在、問題は自分のコードではなく画像であると確信しています。この1人の患者を除いて、私は一日中患者や画像シリーズを問題なく変更することができます。この患者に関連する1つ以上の画像に関する何かが、iPadで記憶を食べています。各患者には1〜2メガバイトの元のサイズのX線が1本または2本あります。私はそれらのファイルサイズ(圧縮品質)を300KB未満に減らしています。これをiPadで検索するためにディスクファイルに保存するときです。単一のシリーズで輸入される合計は1.5MB以下です。少なくともそれはディスクファイルの合計サイズです。私はiPadがそれらを得ると、実際にファイルサイズに何が起こっているのか分かりません。

表示するためにテーブルビューにロードする前に、インポートしたイメージのサイズや破損をテストする方法はありますか?

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    static NSString *CellIdentifier = @"Cell"; 
    ImageCell *cell = [thumbsTableView dequeueReusableCellWithIdentifier:CellIdentifier]; 

    if (cell == nil) { 
     cell = [[[ImageCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease]; 
    } 

    cell.pImage.image = [thumbsArray objectAtIndex:indexPath.row]; 
    return cell; 
} 


- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section 
{ 
    return [thumbsArray count]; 

} 
+0

'thumbsArray'のサイズを確認し、' tableView:numberOfRowsInSection: 'と比較してください。あなたが見るためにここにそのコードをいくつか掲載したいかもしれません。 – greg

+0

numberOfRowsInSectionは、thumbsArrayカウントを返すので問題ではありません。私はかなり私の問題は、画像が大きいか、私はそれらを正しく管理していないためにメモリであることを確信しています。画像のサイズを確認する方法はありますか? – user278859

+0

私は主な質問に画像テストに関する私の質問を追加します。 – user278859

答えて

0

あなたはデバッグするためにいくつかのブレークポイントを設定しようとしましたか?あなたが投稿したコードから、私は問題を見ることができませんでした。 NSZombieを有効にしましたか?

+0

ブレークポイント、はい、NSZombie no。私はそれを忘れていた。ありがとう。 – user278859

+0

私はあなたの提案を感謝します。私はこの1人の患者に何か予期しないことが起こっていると思うので、iPadでの画像検査に関する私の元の質問に質問を追加しました。おそらくあなたはこの新しい質問を手伝ってくれるでしょう。 – user278859

+0

画像はファイルなので、NSFileManagerを使って画像のサイズを取得できます。 – Jason

関連する問題