23

アンドロイドで、別のフラグメントをスライドできますか?たとえば、次のイメージに:Androidで別のフラグメントをスライディングする

image 1

二つの断片があります。 1つは赤色で、もう1つは青色です。ユーザが黒色の矢印上で指を押して右にドラッグすると、赤色の断片もドラッグされて、青色の断片が覆われます。結局、赤い断片は青い断片全体を覆います。また、赤い断片が青い断片の半分以下にドラッグされる前に指を離すと、赤い断片は元の場所に戻ってきます(したがって、青い断片を覆わない)。しかし、赤い断片が青い断片の半分、または青い断片全体を覆うまで、ユーザが指を持ち上げない(すなわち、矢印をドラッグする)場合、赤い断片は青の断片全体を覆うべきである。

また、赤色のフラグメント(例えば、ButtonsEditTextsなど)にビューがある場合は、それに応じてサイズも変更されます。

これを行う方法はありますか?はいの場合は、どうですか?

+0

この問題は解決しましたか? – Tushar

+0

私は本当に興味がありますか? – Glenn85

+0

私はこの質問をして以来、かなり長い時間がかかりました。私はそれをどのように解決したのか、それとも解決したのかを覚えていない。 – Vaibhav

答えて

2

あなたがしようとしていることは、最新のAndroidマーケットUIのようなものでしょうか?別のものを見せている断片をスライドできますか?

それはそれだなら、私はあなたがこのサイトを見てみることをお勧めします。 http://viewpagerindicator.com/

それはあなたが求めているものを行いジェイク・ウォートンで行うプロジェクトです。ソースコードをダウンロードして、自分で実装する方法を見つけることもできますし、単にライブラリとして使用することもできます(ウェブサイトでも説明されています)。私は、あなたは、AndroidでのフラグメントとFragmentActivityにご覧になることをお勧めします追加情報については

は、ここでは両方のフラグメントとFragmentActivityを使用する例へのリンクを行くが、インターネット上でたくさんあります http://www.e-nature.ch/tech/?p=6

希望これを助けて!

+0

これは私が探しているものではありませんが、答えをありがとう。 ViewpagerIndicatorは異なる機能を提供します。 – Vaibhav

1

私は簡単な方法を考える...ので、このようにそれをしようとすることはできません。

でframeLayoutを使用してみてください。 青のLinearLayoutを追加した後、たとえば赤のLinearLayoutを1つ追加します。 次に、赤のレイアウトは青の青です。

赤いレイアウトのonTouchリスナーを添付します。 TouchEventがあなたに与えるx座標とy座標の単純な計算を、プログラム上、赤いレイアウト、幅などのLayoutParamsを設定するために行います。

これは私の頭の上からのアイデアです。試したことはありませんでした。

希望はあなたを助けます。 乾杯!

+1

答えをありがとう。私はこのアプローチを試してみましたが、うまくいきました。しかし、**滑らかな**ドラッグアプローチ、すなわち、LayoutParamsがリセットされ、レイアウトが再測定され、再描画されるときに画面がちらつくようにはならない。 – Vaibhav

4

SlidingDrawerの使用を検討しましたか?あなたは引き出しの内容として赤い断片を、ハンドルとして黒い矢印を持つことができます。

2

リニアレイアウトを拡張するカスタムビューグループを使用するとします。内部ビューは、画面の一部を定義するレイアウトの重みを持つ必要があります。

カスタムビューグループonLayoutとonMeassureをオーバーライドする必要があります。ビューグループは、スムーズな再スケーリングのために、子ビューのメザメントとレイアウトを必要とします。

希望します。

関連する問題