6

UITableViewが底に達したときにバウンスできるようにするにはどうすればよいでしょうか。基本的にUIImageView、セクション ヘッダーとしてa を追加してTableView'sいますが、現在、上部にプルアップすると、 myUIImageViewと myの間に醜いスペースができてしまいますUINavigationBar

この質問を見ましたが、解決策がよくわかりません。誰か詳しく説明してくれませんか?

4

2 に答える 2

4

contentOffset は、フレームの原点 (0, 0) と最初のセルの原点の間の距離です。

iOS: デフォルトの座標系の原点は作図領域の左上にあり、正の値はそこから右下に伸びます。 iOS のビューの座標系のデフォルトの向きを変更することはできません。つまり、「反転」することはできません。

最初、contentOffset はゼロです。リストの一番上をスクロールした場合 (指を下にドラッグした場合)、contentOffset は負になります。リストを下にスクロールした場合 (最初のセルがフレームの上にある場合)、contentOffset は正になります。

#pragma mark - UIScrollViewDelegate 
-(void)scrollViewDidScroll:(UIScrollView *)scrollView {
    CGFloat maxOffset = (scrollView.contentSize.height - scrollView.frame.size.height);
    CGFloat originOffset = 0;
    // Don't scroll below the last cell.
    if (scrollView.contentOffset.y >= maxOffset) {
        scrollView.contentOffset = CGPointMake(scrollView.contentOffset.x, maxOffset);

    // Don't scroll above the first cell.
    } else if (scrollView.contentOffset.y <= originOffset) {
        scrollView.contentOffset = CGPointZero;
    }
}
于 2015-03-19T22:04:57.767 に答える