Android实现类似主屏幕上的页面计数器

时间:2012-04-04 09:20:26

标签: android

有没有人知道如何在主屏幕上进行页面/视图计数器(小点)的示例?

就像这个例子:

enter image description here

由于

1 个答案:

答案 0 :(得分:8)

PagerTitleStrip是您与ViewPager一起用来表明您所在页面的内容。这是您添加到XML的内容。

布局XML

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

<android.support.v4.view.ViewPager
    android:id="@+id/viewpager"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center" >

    <android.support.v4.view.PagerTitleStrip
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="top" />
</android.support.v4.view.ViewPager>

</LinearLayout>

在你的PagerAdapter

@Override
    public CharSequence getPageTitle (int position) {
        return "Your static title";
    }

但是,PagerTitleStrip不是非常可自定义,但ViewPagerIndicator非常可自定义,并且包含您正在寻找的虚线指示符。您需要对其进行主题化以重新创建OP中的图片。

圈子指示符 ViewPagerIndicator

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res/com.viewpagerindicator.sample"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">

<android.support.v4.view.ViewPager
    android:id="@+id/pager"
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    />
<com.viewpagerindicator.CirclePageIndicator
    android:id="@+id/indicator"
    android:padding="10dip"
    android:layout_height="wrap_content"
    android:layout_width="fill_parent"
    />

</LinearLayout>

然后在您的代码中

CirclePageIndicator mIndicator = (CirclePageIndicator)findViewById(R.id.indicator);
        mIndicator.setViewPager(mPager);

ViewPagerExtensions是另一个开源库,为您可能感兴趣的ViewPager提供自定义视图。