0

レイアウト スワイプ UI を実装するのに大きな問題があります。ここでは、各レイアウトがどのように機能するかを示します。私の最初のレイアウト

ここに画像の説明を入力

私の2番目のレイアウト

ここに画像の説明を入力

私の 3 番目のレイアウト

ここに画像の説明を入力

仕組み: ユーザーは画面をタッチしてページを移動でき、レイアウトやページの移動に合わせてインジケーターが移動します。ただし、[サインイン] と [サインアップ] ボタンはその位置に固定されます。このタイプの UI を実装するにはどうすればよいですか。

4

4 に答える 4

0

これは viewFlipper を使用して行うことができますが、これ全体をレイアウトとして使用するトリックがあります。

フレームレイアウトを使用する

重力を下​​に設定してボタンを落ち着かせる

フレームレイアウトはスタックとして機能することに注意してください最後に配置されたLIFOのもの(ウィジェット/レイアウト)は、xmlでそれらの上に配置されたものを重ね合わせます

たとえば

//したがって、ここではビューに s2 とその下の s1 が表示されます.....

したがって、レイアウトでは、s2 は重力のあるボタンになり、下部 s1 はviewFlipperである必要があります ...

スワイプ

スワイプは onTouch イベントを使用して実現できます

  • 左スワイプ

タッチダウンが位置(x1、y1)とonTouchUp(x2、y2)を与えると、if(x2> x1)をチェックするので、viewFlipper.setInAnimation(Animation)viewFlipper.setOutAnimation(Animation)を使用します--なくなるUI用

  • (x2<x1) の場合も同様に右にスワイプします。

    viewFlipper.setInAnimation(アニメーション) viewFlipper.setOutAnimation(アニメーション)

于 2013-05-10T05:57:07.287 に答える
0

ViewFlowソースを確認してくださいの完全な例を次に示します

https://github.com/pakerfeldt/android-viewflow

ここに別の例があります

http://developer.android.com/shareables/training/Animations.zip

スクリーンスライドの実装を参照してください。それがまさにあなたが望むものです。

于 2013-05-10T05:36:09.017 に答える
0

バーはこんな感じで動きます

Display d= getWindowManager().getDefaultDisplay();
        int h=d.getHeight();
        int w=d.getWidth();

この h と w を取得した後、スワイプするたびにバーを移動します。ここで、w=上記の方法で計算された画面幅のインクリメント=w/3;

bar_initial_position+=インクリメント;

だから動く..

于 2013-05-10T09:52:58.197 に答える
0

レイアウトをタッチしてレイアウトを設定することで、3 つの異なるレイアウトとインクリメント カウンターを使用しました。

于 2013-05-10T05:40:01.937 に答える