2012-02-29 11 views
0

私は、ユーザが画面の下から指を上にスライドさせると、画面の下4分の1を占めるスクロールビューを表示するようにカスタムジェスチャーを望みます。同様に、ビューを閉じるために、ユーザは指を画面から下にスライドさせる。私は、ジェスチャとアニメーションをどのように接続して、ユーザが指を動かすとビューが上下にスライドするようにするかを考え出すのにほとんど問題があります。iOSアニメーションスクロールビュー

+1

これまでに何を試しましたか? –

+0

私はカスタムジェスチャーとスクロールビューを実装しました。私はそれを "魔法のように"表示/消滅させることができます。私はちょうどユーザーの指でビューを移動する方法を知りません。 – user1120008

答えて

0

は、2つのビュー、self.viewself.scrollViewを持っていると仮定します。 self.scrollViewは、self.viewのサブビューです。

次に、self.scrollViewをオフスクリーンに配置します。両方のビューのための

登録dragイベント:

[self.view addTarget:self action:@selector(mainViewMoved:withEvent:) forControlEvents:UIControlEventTouchDragInside]; 
[self.scrollView addTarget:self action:@selector(scrollViewMoved:withEvent:) forControlEvents:UIControlEventTouchDragInside]; 

ビューmainViewMoved:withEventに必要な運動(scrollViewを持ち出す)とscrollViewMoved:withEventは(自分自身をアップ/ダウン移動)するかどうかですかタッチの動きに基づいてハンドラ。

さらに詳しい情報はthis questionです。

0

UIResponder(UIViewのスーパークラス)をチェックしてください。それが隠されている時に目に見える「ハンドル」がある場合は、お使いのベースビューと(ダウンスワイプのために)あなたのscrollviewに次のように実装するか、単にあなたのscrollviewする必要があります:タッチが開始

– touchesBegan:withEvent: 
– touchesMoved:withEvent: 
– touchesEnded:withEvent: 
– touchesCancelled:withEvent: 

レコード指の動き具合を計算し、それに応じてスクロールビューのフレームを調整します。彼らが指を持ち上げると(touchesEnded)、スレッショルド(たとえば20ピクセル)を超えているかどうかを判断し、そうであればスクロールビューを上下にスライドさせます。