2012-01-02 10 views
3

ここにメインのスクロールがあります。ストリームビュー。しかし、彼らはどのようにこれを実装しましたか?Google+ iPhoneアプリでスクロールはどのように機能しますか?

私の推測:有効にページングを持つ単一のUIScrollBarで複数のビュー/テーブルビューがあります 。 「近くに来るサークル」ビューは、UITouchMovedに反応するUIlablesを含むUIScrollBarです。しかし、スクロールバーに複数のビュー/テーブルビューがあっても、どのように速くて遅くなることはありませんか?

はこの1つのように任意の外部のAPIはありますか?私は自分のアプリケーションの1つでそれを実装したいと思います。

ありがとうございました!

http://www8.pcmag.com/media/images/264656-google-mobile-app-stream.jpgenter image description here

答えて

1

それが効率的だからそれは高速です。唯一プリロードされたビューは、現在のビューの左右にあるビューです。次のビューに移動すると、1つのビューがアンロードされ、次のビューがロードされ、スクロールがシームレスになります。

これを本当にすばやくスクロールしようとすると、ビューの1つがバウンスを開始する(つまり、何もスクロールしない)ことができます。つまり、次のビューがロードされず、スクロールビューのコンテンツオフセットは調整されません。

彼らはビューの各オプション(着信、近所円、...)のために、内部に異なるtableviewsとscrollviewを使用しているように見えます。ページングは​​有効で、スクロールは一度に1つの方向にしかできません。

[編集] ところで、2010年と2011年のAppleのWWDCビデオのいくつかをチェックしてください。これは、これを動作させるための良い例がいくつかあります。

+0

答えRogに感謝します。私は間違いなくそれらのビデオをチェックします。はい、あなたは3つのプリロードビューについて正しいです。私は速くスクロールしようとしましたが、時には黒/無のビューが0.1秒間表示されることがありました。 viewOptionsはどのように実装されていると思いますか? 320pxを左にスクロールすると、「近くに」ラベルが中央に表示されます。それはどのように機能するのですか?あなたはウェブ上で素晴らしい記事を書いています。 Thanksmate;) –

+0

ラベルはかなり簡単ですが、 'scrollView:didScroll:'メソッドのscrollView contentOffsetに基づいてコンテンツをオフセットするだけです。 – Rog

関連する問題