2

画像付きのテーブルセルがあります。スクロール速度がしきい値付近に下がるとすぐに、画像の読み込みを開始します。

ただし、UITableViewの現在のスクロール速度を確認するにはどうすればよいですか?

私は見つけました

tableView.isDecelerating

ただし、スクロールが遅い場合にも画像をロードしたい

4

2 に答える 2

9

これは私のために働いています(cellForRowAtIndexPathコールバックで)。速度が1000ピクセル/秒を下回った場合に画像をロードします。

static double prevCallTime = 0;
static double prevCallOffset = 0;

//Simple velocity calculation
double curCallTime = CACurrentMediaTime();
double timeDelta = curCallTime - prevCallTime;
double curCallOffset = self.tableView.contentOffset.y;
double offsetDelta = curCallOffset - prevCallOffset;
double velocity = fabs(offsetDelta / timeDelta);
NSLog(@"Velocity: %f", velocity);
prevCallTime = curCallTime;
prevCallOffset = curCallOffset;
于 2012-11-13T06:28:11.300 に答える
1

iOS> = 5をターゲットにしている場合は、基礎UIPanGestureRecognizerを取得して、その速度を尋ねることができます

CGPoint velocity = [tableView.panGestureRecognizer velocityInView:tableView];
于 2012-08-29T09:49:33.790 に答える