私はtableviewを持っています。それはサーバーからのデータの混乱を受信します。テーブルビューのデータを受け取るたびに最新のものを表示したいのですが、scrollToRowAtIndexPath:atScrollPosition:animated:
と呼ばれますが、スクロールしても画面内で何もできません。 はここに私のメインのコードUITableView scrollToRowAtIndexPath:atScrollPosition:アニメーション:真剣に私のアプリを遅らせる
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *identifier = @"tableViewCell";
DLtestCellTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:identifier];
if (cell == nil) {
cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier];
}
NSDictionary* dict = arr[indexPath.row];
cell.myLabel.attributedText = dict[@"content"];
[cell.myImageview sd_setImageWithURL:dict[@"imageUrl"] placeholderImage:[UIImage imageNamed:@"transparentPlaceHolder"]];
return cell;
}
、ここではあなたがscrollToRowAtIndexPath
メソッドを使用する必要があります
- (void)reloadTableView
{
dispatch_async(dispatch_get_main_queue(), ^{
NSIndexPath *lastRow = [NSIndexPath indexPathForRow:row inSection:0];
[self.tableView insertRowsAtIndexPaths:@[lastRow] withRowAnimation:UITableViewRowAnimationLeft];
});
[self.tableView scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:row inSection:0] atScrollPosition:UITableViewScrollPositionBottom animated:NO];
}
メインスレッド(performOnMainThread)のメソッド – SM18