2011-01-29 7 views
1

再利用可能な表のセルに問題があります。私は今までに11個のセルが読み込まれているだけです。ほとんどのコンテンツがダウンロードされ、解析され、正しく表示されます。iOS:再利用時にデータを変更するReusableCell

Iが午前問題は、私はその行に固有の背景色でUIImageViewの正方形を示していことです。また、デバイスを回転させたり、テーブルビューを上下にスクロールすると(未使用のセルが削除されます)、色は他の色に変更されます。

これをやめる方法は完全にはわかりません。現在、

が呼び出されており、方向を検出してセル識別子を作成し、セルを作成してセルに追加します。

助けがあれば助かります。

答えて

0

セル識別子としては何を使用していますか? someObject.someProperty

0

フムitem.title例えばすることができ、その方法をデキュー作品これは

NSString *cellIdentifier = someObject.someProperty; 
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier]; 

のような、ユニークなものを使用してください。概念的には11行ありますが、実際にはiOSでは不正行為をしたり、一部を再利用したりすることができます。

あなたはちょうどあなたがデキューされたセルのテーブルビューを依頼された場合、あなたはまだそれが正しいデータを示しているので、それを再構成する必要があることを覚えておく必要があります。

セルが実際に内部処理を行っているために問題が発生している場合は...しないでください。そのコードを他の場所に移動します。 ;)

0

あなたがユニークなセル識別子を使用する必要がtableviewCellsを作成するには、それテーブルビュー内のすべてのセルは、その同じ識別子を必要とする:

static NSString *cellIdentifier = @"YOURINDETIFIER"; 
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier forIndexPath:indexPath]; 

今、あなたはセットアップあなたの細胞の性質をでしょう。

カスタムセルを使用している場合は、必ずすべてのサブビューを再設定してください。そうしないと、以前に使用されたセルからアーチファクトが発生します。

cellForRowAtIndexPathで行っていることを投稿できますか?

関連する問題