2

ViewPager で setPadding() を使用してカード スワイプ効果を実現していますが、これは正常に機能していますが、ViewPager (60, 0, 60, 0) にパディングを適用すると、PagerTabStrip の幅が明らかに小さくなり、タイトルと画面の両端の間に 60 dp のギャップがあります (下図のように)。

SetMinimumWidth() を使用して (より良い解決策がない場合) プログラムで PagerTabStrip の幅を広げようとしましたが、違いはありません。

setPadding() によって引き起こされるカットオフ タイトルと 60 dp のギャップを克服するにはどうすればよいですか? ありがとう!

私が使用するコード:

 pager = (ViewPager) v.findViewById(R.id.pager);
            pager.setAdapter(new CardsPagerAdapter(getActivity(), cardImages, cardTitles, cardDescription));

            pager.setPadding(50, 0, 50, 0);
            pager.setClipToPadding(false);
            pager.setPageMargin(20);

            WindowManager wm = (WindowManager) getActivity().getSystemService(Context.WINDOW_SERVICE);
            Display display = wm.getDefaultDisplay();
            Point size = new Point();
            display.getSize(size);

            pagerStrip = (PagerTabStrip) v.findViewById(R.id.pager_tab_strip);
            pagerStrip.setMinimumWidth(size.x);

xml:

<android.support.v4.view.ViewPager
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/pager"
            android:layout_width="fill_parent"
            android:layout_height="390dp"
            android:layout_below="@+id/homeTopIv"
            android:layout_marginTop="-85dp">


            <android.support.v4.view.PagerTabStrip
                android:id="@+id/pager_tab_strip"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="top"
                android:background="@android:color/transparent"
                android:textAppearance="@style/PagerTabStripText"
                android:paddingTop="5dp"
                android:paddingBottom="14dp"/>

        </android.support.v4.view.ViewPager>

ここに画像の説明を入力

4

1 に答える 1