0

それぞれテキストと .png 画像を含む 7 行の UITableView があります。コードを追加して各行の画像を設定し、シミュレーターでアプリを実行すると、読み込み時間が長くなります。

パフォーマンスの問題の原因は、画像のサイズが大きすぎて、画像を適切なピクセル寸法にスケーリングしている最中であると思われます。ただし、パフォーマンスをさらに最適化するために、コード内で別の方法で実行できることは何もないことを確認したかったのです。コードで別の方法で行うべきことはありますか?

    -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *c = [tableView dequeueReusableCellWithIdentifier:@"Cell"];

    if (!c)
    {
        c = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
                                   reuseIdentifier:@"Cell"];
    }
//adds text to table view
    [[c textLabel] setText:[categoryNames objectAtIndex:[indexPath row]]];
    [[c textLabel] setTextColor:[UIColor whiteColor]];

    //add pictures to table view

    NSString *path = [[NSBundle mainBundle] pathForResource:[categoryURLs objectAtIndex:[indexPath row]] ofType:@"png"];
    [[c imageView] setImage:[UIImage imageWithContentsOfFile:path]];

    return c;


}
4

1 に答える 1

0

画像を 44x44 ピクセル (標準の UITableViewCell の高さ) にサイズ変更し、@2x retina 画像の場合は 88x88 にサイズ変更することで問題を解決しました。

于 2012-09-30T21:47:33.027 に答える