0

5 つのテーブル ビューで構成されるページ コントローラーがあります。これらのテーブル ビュー間をスワイプすると、短いラグが発生します。これは正常ですか、それとも悪いコードが原因である可能性がありますか?

この問題を説明する短いビデオをアップロードしました。

[ビデオ] UIPageController を使用した UITableView で遅延が発生する

編集: 削除するのに役立つかのように、cell.detailTextLabel.textこれは理にかなっていますか?

これは、詳細ラベルを設定する場所です。

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat: @"'kl.' HH:mm"];
NSTimeZone *gmt = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];
[dateFormat setTimeZone:gmt];
NSString *dateFormatted = [dateFormat stringFromDate:[thisEntry objectForKey:@"date"]];

if(![[thisEntry objectForKey:@"weekDay"] isEqualToString:@"Ikke programsat"]) {
   cell.detailTextLabel.text = [NSString stringWithFormat:@"%@ %@", [thisEntry objectForKey:@"scene"], dateFormatted];
}

[dateFormat release];
4

1 に答える 1

1

問題は、各ページの上部にある画像に関係している可能性が最も高いと思います。各ページの表には、テキストのみを含む軽量セルのみが含まれているようです。そのため、各テーブルはかなり迅速にレンダリングされるはずです。レンダリングに時間がかかるのは上の画像です。アプリでラグが発生するたびに、最初に目にするのはグラフィック アセットです。画像のサイズと解像度によっては、画像のレンダリングに時間がかかる場合があります。画像の場合は、キャッシュを使用する可能性を考慮する必要があります。UIImage および UIImageView に関するドキュメントには、役立つ情報が含まれています。

また、パフォーマンス ヒットの原因となっているコードの部分を正確に特定するために、Shark を使用していくつかのテストを実行することをお勧めします。画像ではなく、何らかの理由で待機しなければならないデータをクエリしているコードの一部である可能性があります。

これが役に立ったことを願っています。幸運を。

于 2011-03-13T18:52:16.320 に答える