1

一度に 1 つだけが表示され、水平スクロールで次のリストが表示されるように、2 つの垂直リスト ビュー A と B を実装したいと考えています。

スクロールをスムーズにしたいです。つまり、タッチダウンして指を動かすと、現在のリストが移動し、新しいリストが移動します...ギャラリー内の画像を移動するときの効果。

ビューをスクロールすることができ、変換アニメーションを使用してスムーズな移行を表示できますが、達成したいのはギャラリーのような効果です。

そのため、水平スクロールは差分リストビューと垂直スクロールを切り替え、リストをスクロールするために使用できます。

4

1 に答える 1

3

ViewPager を使用してこれを実現できます。 http://developer.android.com/reference/android/support/v4/view/ViewPager.html

main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <android.support.v4.view.ViewPager
        android:id="@+id/pager"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1" />

</LinearLayout>

MainActivity.java

....

onCreate()...
 mViewPager = (ViewPager) findViewById(R.id.pager);

            mViewPager.setAdapter(new HomePagerAdapter(getSupportFragmentManager()));
//If your Activity implements ViewPager.OnPageChangeListener
  //          mViewPager.setOnPageChangeListener(this);
...

private class HomePagerAdapter extends FragmentPagerAdapter {
    public HomePagerAdapter(FragmentManager fm) {
        super(fm);
    }

    @Override
    public Fragment getItem(int position) {
        switch (position) {
            case 0:
                return (mMyListViewFragment1 = new MyListViewFragment());

            case 1:
                return (mMyListViewFragment2 = new MyListViewFragment());

        }
        return null;
    }

    @Override
    public int getCount() {
        return 2;
    }
}
于 2013-01-11T06:39:36.007 に答える