私は、MPMediaQueryからアルバムのリストをロードしているUITableViewを持っています。非正方形のアルバムアートを持つアルバムが、組み込みのセルビューのラベルテキストを右に押すようになるまで、すべてがうまくいきました。これを気づくことは私の没落であり、プロセス中にスクロールがスムーズではないことに気がつきました。UITableview + iPodライブラリーからの画像で、不安定なスクロールが発生する。回避策はありますか?
私はポジショニングの問題を解決し、ペン先からの細胞を作るために行ってきましたが、パフォーマンスはまだ苦しみました。この時点で、私は膨大な量の研究を行い、実装する能力をすべて試していました。最初
- はImageViewのでペン先からの細胞で、2つのラベル
- はImageViewの中に奇妙なスケーリングを補正するために、私はそれ(パフォーマンスに本当のヒット)をトリミングするのUIView内ImageViewのを追加しました。
- は、後処理を行わずに画像をロードしたが、まだジッタがありませんでした。テーブルビューから画像を渡して、(無効)のdrawRect(AppleのTableViewSuite例#5の例のように) -
- は、セルを実装しました。これは当初は最初の8枚の画像しかロードしておらず、パフォーマンスはわずかに低下していました。
- 私はその後、[myCell setNeedsDisplay]他のすべての画像が正しく表示されます、そしてパフォーマンスが戻ってダウンしたので、それはセルを再描画に設定。私はまた、変更のない画像で部分を再描画するだけでした。
- スタティックイメージが1つのこの方法では、完全なパフォーマンスが得られました。
cellIdentifierなどの通常のものがすべて正しいことを確認しました。セルの表示にテキストしかない場合は、完全にスクロールします。 AppleのiPodのアプリで
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
// Cell initizalation
static NSString *CellIdent = @"CellIdent";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdent];
if (cell == nil) {
cell = [[UITableViewCell alloc]
initWithStyle:UITableViewCellStyleSubtitle
reuseIdentifier:CellIdent];
}
cell.imageView.image = [[[[albumList
objectAtIndex:indexPath.section]objectAtIndex:indexPath.row] valueForProperty:MPMediaItemPropertyArtwork]imageWithSize:CGSizeMake(0,56)];
//it seems to scale with a sharper image if CGSizeMake has a value, rather than
//CGSizeZero. It doesn't actually do any scaling at this point, which I initially thought
//it would, but the results were more what I wanted so...
return cell;
}
、芸術のスクロール等とアルバムのリスト:以下
私は現在のセルのイメージをつかんでいますどのように説明するために、デフォルトのセルのビューのいずれかを使用してtableviewcellの実装を見つけますシルク、明らかに、私は何かが欠けている。
あなたのUITableViewCellをalloc'ingているが、あなたはそれを解放されていません。私は、allocラインにautoreleaseを追加することをお勧めします。 –
私はARCを使用していますが、それは素晴らしいクラッシュを引き起こします(少なくとも、クラッシュすると思うのはどうか)=) – solenoid