Android-ViewPagerIndicator

Android-ViewPagerIndicator

ViewPagerIndicator是JakeWharton开源的一个Android框架,就是ViewPager的分页指示器。通过他可以快速开发应用,比如很多应用的指引界面,下面的小圆点,还有一些应用上面的Tab等等,ViewPageIndicator都能很好的实现

Download and Import

项目地址

在自己的工程中引用Lib,具体方法参考 如何引用第三方库

Layout

页面设计比较简单,添加如下两个控件即可




Java

页面代码不要继承Activity,继承FragmentActivity,参考代码如下

import com.viewpagerindicator.TabPageIndicator;

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.View;
import android.widget.ImageView;

public class OrderlsitActivity extends FragmentActivity {

    private static final String[] CONTENT = new String[] { "新订单", "等待确认",
            "等待评价", "已完成" };

    private ViewPager viewPager = null;

    @Override
    protected void onCreate(Bundle arg0) {
        // TODO Auto-generated method stub
        super.onCreate(arg0);

        setContentView(R.layout.ac_orderlist);

        FragmentPagerAdapter adapter = new GoogleMusicAdapter(
                getSupportFragmentManager());

        ViewPager viewPager = (ViewPager) findViewById(R.id.ac_orderlist_viewpage);
        viewPager.setAdapter(adapter);

        TabPageIndicator indicator = (TabPageIndicator) findViewById(R.id.indicator);
        
        indicator.setViewPager(viewPager);
    }

    @Override
    public void onBackPressed() {
        super.onBackPressed();
        overridePendingTransition(R.anim.slide_in_left, R.anim.slide_out_right);
    }

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

        @Override
        public Fragment getItem(int position) {
            return TestFragment.newInstance(CONTENT[position % CONTENT.length]);
        }

        @Override
        public CharSequence getPageTitle(int position) {
            return CONTENT[position % CONTENT.length].toUpperCase();
        }

        @Override
        public int getCount() {
            return CONTENT.length;
        }
    }

}

Style

如果不添加style,那么实现效果会很丑,不是一般的丑,所以添加如下代码




另外还有最最重要的一条不要忘记添加,在AppTheme下添加如下代码

@style/CustomTabPageIndicator

代码中的@drawable/custom_tab_indicator实现参考如下(这个就是项目中的simple中的样式):



    
    
    

    
    
    

    
    
    
    

    
    
    

最后查看实现效果吧,so easy!!

你可能感兴趣的:(Android-ViewPagerIndicator)