2

両方のソースとサンプルがたくさんあります。インジケーターとしてドットを含むページャーが必要で、Android 5.0 で新しい Studio を使用しています。

初見から。

  • PagerSlidingTabStripより新しく見え、それをgradleプロジェクトとしてインポートしてテストすることができました。

  • ViewPagerIndicatorアプリストアのサンプルアプリは削除される可能性があります。投稿内のすべての
    リンクが壊れているようです。
    また、 Gradle プロジェクトとしてインポートすることもできませんでした。

を使用する傾向がありましたPagerSlidingTabStripが、「PagerSlidingTabStrip」を使用して小さなドットのページネーションを簡単に構成できるかどうかはわかりません。私が理解している限り、主にタイトル付きのタブ用に設計されています。

4

1 に答える 1

5

これは、自分で解決するのが非常に簡単です。ここにサンプルがあります。

ViewPager の下に LinearLayout(@+id/indContainer) を追加し、次のコードを使用してドットを設定します。

LinearLayout indContainer = (LinearLayout) findViewById(R.id.indicator_container);
    for(int x=0;x<yourData.size();x++){
        ImageView v = new ImageView(this);
        int px = (int)(4 * (getResources().getDisplayMetrics().densityDpi / 160));
        LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayoutCompat.LayoutParams.WRAP_CONTENT, LinearLayoutCompat.LayoutParams.WRAP_CONTENT);
        params.setMargins(px,0,px,0);
        v.setLayoutParams(params);
        v.setImageResource(R.drawable.indicator_inactive);
        indContainer.addView(v);
    }

次に、あなたのpageChangeListenerで:

LinearLayout indContainer = (LinearLayout) findViewById(R.id.indicator_container);
((ImageView) indContainer.getChildAt(position)).setImageResource(R.drawable.indicator_active);
((ImageView) indContainer.getChildAt(lastPage)).setImageResource(R.drawable.indicator_inactive);
lastPage = position;

インジケーターのアイコンとサイズを必要に応じて調整します

于 2015-01-16T15:16:31.067 に答える