私はカスタム値と画像を持つテーブルビューを使用します。このテーブルビュー行を高速化するにはどうすればよいですか?
すべての行は、この行います
- wordpressのXML
を解析 - - "木、2011年1月13日夜10時26分27秒0000" この文字列を分割して取得するデバイス(iphone/ipadの)
をチェックしますpos [1]とpos [2]である。
- "Gennaio" で
を "月" を変換する - 行のセル内の設定値
それは、このように作るのです。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
@try {
newsRow = ((NewsRowController *)[tableView dequeueReusableCellWithIdentifier:@"cell"]);
if (newsRow == nil) {
if ([[Device GetModel] isEqualToString:@"iPad Simulator"] || [[Device GetModel] isEqualToString:@"iPad"])
[[NSBundle mainBundle] loadNibNamed:@"NewsRow_ipad" owner:self options:nil];
else [[NSBundle mainBundle] loadNibNamed:@"NewsRow" owner:self options:nil];
if ([tableArray count] > 0) {
NSArray *chunks = [[dataArray objectAtIndex:indexPath.row] componentsSeparatedByString: @" "];
[newsRow setCellDataWithName:[tableArray objectAtIndex:indexPath.row]
andDate:[descArray objectAtIndex:indexPath.row]
day:[chunks objectAtIndex:1]
month:[self convertMonthToExtended:[chunks objectAtIndex:2]]];
}
}
}
@catch (NSException * e) {
NSLog(@"OK, crashato. Sappiamo il perchè!");
}
return newsRow;
}
は、関数がこれを行うconvertMonthToExtended:
今if ([small isEqualToString:@"Jan"]) return @"gennaio";
[...]
if ([small isEqualToString:@"Dec"]) return @"dicembre";
それは非常にうまく動作しますが、シミュレータ上では特に3Gデバイス、私はテーブルをスクロールするときに私は多くのことをするのでゆっくりとスクロールします。
どうすればスクロール速度を上げる?
この機能を再実装する正しい方法はです。
このスニペットを最適化するにはどうすればよいですか?
どうぞよろしくお願いします。
おかげで、私は計算をやって、それはのUITableViewをバックアップするために使用される中間データストアにチャンクにこの情報バッチ処理へのより良いアプローチだと考えていると思います
+1 lucaに感謝します。私はそれが好きです。 – elp