2011-12-14 6 views
2

私は、UIScrollviewのラップ(ルーピング)でスクロールメニューを作成する方法を探していました。 私はこれをチェックしましたquestionとその例はうまくいくかもしれません。UIscrollViewのページサイズを設定する

ただ1ページ(画像)を表示するのではなく、3ページを表示し、1ページずつスクロールする必要があります。

UIScrollViewのページサイズをフレームの1/3より小さく設定するにはどうすればいいですか?

達成可能ですか?ない場合は、別の方向に私を指示してください

おかげ

+1

が行わあなたに同じ結果が得られます – Frade

+0

サラにありがとう..そして間違って申し訳ありません..) – Frade

+0

これをどうやって解決しましたか?あなたは1ページ右にページングするようにしようとしていました。たとえば、前の画面の1/3を左に表示していますが、正しいですか?どのように各ページを狭くするかを見つけたら、どうもありがとうございます。 – Ryan

答えて

1

しばらくすると、この問題をもう一度解決する必要があります。

私のために働く解決策が見つかりました。

チェックthis answer:withEvent:

    あなたscrollViewサイズがページサイズに変更し
  1. あなたは
  2. をしたいUIViewのサブクラス(例えばHackClipView)を作成し、hitTestをオーバーライドし、あなたのscroll.clipsToBounds = NO
  3. を設定します。方法

    -(UIView *) hitTest:(CGPoint) point withEvent:(UIEvent *)event 
    {  
        UIView* child = [super hitTest:point withEvent:event]; 
        if (child == self && self.subviews.count > 0) 
        { 
         return self.subviews[0]; 
        } 
        return child; 
    } 
    
  4. HackClipView.clipsToBounds = YES

  5. を設定します(合計スクロールサイズにしたい)

は詳細については

更新this answerを参照してください。このHackClipViewであなたのscrollViewを入れて:あなたはルシウスの答えにすることができます述べたように を今度はUIScollViewDelegateプロトコルを実装し、- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffsetメソッドを使用してください。 targetContentOffsetはポインタです。このメソッドを使用しても、ユーザーが一度に多数のページをスクロールできるため、スクロール・ビュー・ページで同じ結果が得られるとは限りません。私は、質問を閉じることができますどのように )??;しかしfastdescelerationRateを設定することはほとんど

1
  1. [theScrollView setFrame:<a frame>];は、あなたのスクロールビューのコンテンツサイズ

サイズを設定するには、スクロールビュー

  • [theScrollView setContentSize:<a Size>];のフレームを設定します1に設定されたサイズは、2で設定されたサイズの1/3になるはずです。

  • +0

    はい、そうです。しかし、ページサイズはフレームと同じサイズになります。コンテンツサイズは3 *フレームサイズになり、3ページになります。目的は、フレームサイズの1/3のページを持つことです。とにかくありがとう、 – Frade

    5

    私はあなたが前のページと次のページの一部が表示されます。これを行う方法は、スクロールビューのフレームを必要なもの(例えば、スクリーンよりも小さい)に設定して、スクロールビューのサブビューのクリッピングをオフにすることです。これはあなたが後になっている効果を達成します。

    +2

    これは私が挑戦しているものの私の最初の考えであったが、私が遭遇したように、フレームの外側の領域をタッチ/スワイプに反応しないようにレンダリングする。その周りに何か方法はありますか? – d2burke