2012-12-12 32 views
7

UIScrollViewのバウンスを制限する必要があります。そのため、通常は底部では跳ね返りますが、上部ではXピクセルを超えません(下部は問題ありません)。iOSでUIScrollviewのバウンド制限を制限する

バウンスサイズを制限する方法はありますか?私はおそらく、scrollViewWillScrollの代理人のメソッド(scrollViewDidScrollの代わりに)が、トップ+ Xよりも移動するスクロールイベントを消費することができると思っていますが、これまで適切なものを見つけることができませんでした。

手がかりはありますか?

+0

なぜバウンスを減らしたいのですか? –

+0

非常に遅い回答がありましたが、はいできます。 私はフロントリストと背景画像で視差効果を作り出していました。 PAth 2.0アプリのようなものですが、バック画像のサイズに応じてバウンスを変えたいと思っていたので、バックリストとバック画像の間に黒い隙間が見えるようにメインリストが動かない(バウンスする)フロントリスト – HiddenDev

答えて

13

scrollViewDidScroll:が正しい方法です。単純にcontentOffsetをそこに調整します。場合理由ビューが0,0に戻ってスクロールされるまで、不自然な遅延のビットが存在すること

- (void)scrollViewDidScroll:(UIScrollView *)scrollView { 
    if (scrollView.contentOffset.y < -20) { 
     scrollView.contentOffset = CGPointMake(0, -20); 
    } 
} 

この例では20個の画素へ戻るバウンスを制限します跳ね返りは減速されたスワイプで、ドラッグではありませんでした。しかし、私はこれを防ぐ方法がないと思う。基本的に、scrollViewは完全な方法でバウンスしますが、表示されません。

+0

あなたは完全に正しいです:)私はそれが良い見えなかったので、多分前に何か間違っていた。 – HiddenDev