視差の背景画像とAndroidViewPager

アナンドシッダールト

ビューページャーがあるアクティビティで背景画像の視差スクロール効果を作成したいのですが、画像はViewPagerのスワイプ/スライドに従ってスクロールする必要があります。

私はすでにhttps://github.com/andraskindler/parallaxviewpagerを使用しようとしましたが、機能していません。画像ではなく空白の背景が表示されます。

このgifは私の要件を説明しています:

ここに画像の説明を入力してください

私を助けてください

nshmura

使用HorizontalScrollViewViewPager.addOnPageChangeListener方法。
以下は例です。

MainActivity.java内:

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        final HorizontalScrollView scrollView = (HorizontalScrollView) findViewById(R.id.scroll_view);
        final ImageView imageView = (ImageView) findViewById(R.id.background);
        final ViewPager viewPager = (ViewPager) findViewById(R.id.view_pager);

        viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
            @Override
            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
                int x = (int) ((viewPager.getWidth() * position + positionOffsetPixels) * computeFactor());
                scrollView.scrollTo(x, 0);
            }

            @Override
            public void onPageSelected(int position) {

            }

            @Override
            public void onPageScrollStateChanged(int state) {

            }

            private float computeFactor() {
                return (imageView.getWidth() - viewPager.getWidth()) /
                        (float)(viewPager.getWidth() * (viewPager.getAdapter().getCount() - 1));
            }
        });
        viewPager.setAdapter(new CustomPagerAdapter(this));
    }
}

レイアウトファイル(activity_main.xml)内:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".MainActivity">

    <HorizontalScrollView
            android:id="@+id/scroll_view"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:scrollbars="none">

        <FrameLayout
                android:layout_width="wrap_content"
                android:layout_height="match_parent">

            <ImageView
                    android:id="@+id/background"
                    android:layout_width="1000dp"
                    android:layout_height="match_parent"
                    android:scaleType="centerCrop"
                    android:src="@drawable/image"/>
        </FrameLayout>

    </HorizontalScrollView>

    <android.support.v4.view.ViewPager
            android:id="@+id/view_pager"
            android:layout_width="match_parent"
            android:layout_height="match_parent"/>

</FrameLayout>

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

cssの背景画像と視差を与える

IEのCSS視差背景画像空白

視差css背景画像が少し動く

視差背景画像フィットdiv

1つの非背景画像の視差スタイルのスクロール

視差のあるブートストラップ3.1.1の背景画像の問題

背景視差CSSとしてのビデオ

中央視差画像

スクロールがbg画像サイズを超えると視差停止背景画像位置変更

視差の背景は、画像の端とその背後にあるコンテンツを明らかにします

視差の背景を作成するSKShader

視差空間画像(DSI)とは

視差画像の不透明度

背景画像を引き伸ばすCSS視差効果

視差マップと修正された画像の重ね合わせ

視差の背景画像でdivを中央に配置するにはどうすればよいですか

UIButtonの画像と背景

javascriptでの視差スクロールの背景位置の問題

視差効果| フラッターでスクロール可能な背景画像

モバイルビューで拡大された視差背景画像

CSSを使用した視差スクロール:背景画像が表示されない

iOS用の視差背景付きの水平スクロール

2つの視差の背景を切り替えます

JS なしの背景ビデオの視差効果

視差効果のある背景ビデオ

AndroidViewPagerとEditText

複数の画像の視差効果スクロール

視差の背景に使用される画像は、style.cssのwordpressURLではなくhttplocalhostから取得されています

CSSの背景-画像と背景の違い

TOP 一覧

  1. 1

    Unity:未知のスクリプトをGameObject(カスタムエディター)に動的にアタッチする方法

  2. 2

    セレンのモデルダイアログからテキストを抽出するにはどうすればよいですか?

  3. 3

    Ansibleで複数行のシェルスクリプトを実行する方法

  4. 4

    tkinterウィンドウを閉じてもPythonプログラムが終了しない

  5. 5

    Crashlytics:コンパイラー生成とはどういう意味ですか?

  6. 6

    GoDaddyでのCKEditorとKCfinderの画像プレビュー

  7. 7

    Windows 10 Pro 1709を1803、1809、または1903に更新しますか?

  8. 8

    Chromeウェブアプリのウェブビューの高さの問題

  9. 9

    モーダルダイアログを自動的に閉じる-サーバーコードが完了したら、Googleスプレッドシートのダイアログを閉じます

  10. 10

    Windows 10の起動時間:以前は20秒でしたが、現在は6〜8倍になっています

  11. 11

    Reactでclsxを使用する方法

  12. 12

    ファイル内の2つのマーカー間のテキストを、別のファイルのテキストのセクションに置き換えるにはどうすればよいですか?

  13. 13

    MLでのデータ前処理の背後にある直感

  14. 14

    グラフからテーブルに条件付き書式を適用するにはどうすればよいですか?

  15. 15

    Pythonを使用して同じ列の同じ値の間の時差を取得する方法

  16. 16

    mutate_allとifelseを組み合わせるにはどうすればよいですか

  17. 17

    ネットワークグラフで、ネットワークコンポーネントにカーソルを合わせたときに、それらを強調表示するにはどうすればよいですか?

  18. 18

    テキストフィールドの値に基づいて UIslider を移動します

  19. 19

    BLOBストレージからデータを読み取り、Azure関数アプリを使用してデータにアクセスする方法

  20. 20

    PowerShellの分割ファイルへのヘッダーの追加

  21. 21

    ソートされた検索、ターゲット値未満の数をカウント

ホットタグ

アーカイブ