2012-05-03 5 views
0

私は少し問題があります。私はこのようなものを作りたいと思っています。 また、スクロールの代わりに上/下ボタンをクリックしてスライダーを制御したいと思っています。クリックしてマスクされたスクロールペインを制御する方法

参考:

http://active.tutsplus.com/tutorials/effects/create-a-responsive-xml-image-scroller-in-actionscript-3-0/は今、私はすべての私の親指を保持しているコンテナMCとマスクコンテナマスクを持っています。私はまた、 がこのスクロールアップ/スクロールダウン機能をトリガーすることになるボタンを持っています。

私は、そのための関数を書く方法を全く考えていません。私はコンテナのトゥイーンを上下させましたが、私はそれには制限が必要です それはトゥイーンを望み、境界から外れます。

提案がありますか?

答えて

0

最初に、コンテンツとともにマスクが移動しないように、コンテンツと同じレベルにあることを確認してください。例えば

myContainer ¬ 
    - contentBox 
    - maskShape 

contentBox.mask = maskShape

スクロールする場合は、ナビゲーションボタンのクリックごとにcontentBoxの位置を増減するだけです。ダウンボタンの場合は

、イベントリスナーにあなたが何かのようにしてください...もちろん

contentBox.y = contentBox.y + 25; 

私たちは、これがスムーズ​​の場合のように上をスライドにしたいです..

TweenLite.to(contentBox, 0.5, {y:contentBox.y + 25}); 

「上へ」ボタンは、これとは逆です。

+0

ありがとうございました!それは行く方法のように思えます、そして、今私は今までに持っています。今私はちょうどcontentBoxが遠くにトゥイーンするのを防ぐ方法を知っていないので、それは視界から外れます。それをチェックする良い方法はありますか? – user987387

+0

絶対に。三項演算(http://en.wikipedia.org/wiki/Ternary_operation)をお勧めします。 contentBox.y =(contentBox.y - 25 <= -100)あなたのcontentBoxが200ピクセルでマスクシェイプが100ピクセルで、下をスクロールしたくないと仮定すると、次のようなことが起こります: )? -100:contentBox.y - 25; ' 基本的には、ボックスを上に移動した結果が最大位置を超えた場合は、最大値に設定し、それ以外の場合は計算を使用します。もちろん、if/elseステートメントでこれを入力することはできますが、ボートを浮かべるものは何でも構いません。 ;) – Atriace