一直以來想搞明白這個不完全的VIewPager是怎么做到的,有幸看到這片篇文章
有二種實現方法
1.設置的屬性
1.clipChildren屬性
2.setPageMargin
3.更新Item外界面
2.重寫getPageWidth
public class MultiplePagerAdapter extends PagerAdapter {
??? private List<Integer> mList;
??? private LayoutInflater layoutInflater;
??? public MultiplePagerAdapter(Context context, List<Integer> list) {
??????? super();
??????? this.mList = list;
??????? layoutInflater = LayoutInflater.from(context);
??? }
??? @Override
??? public int getCount() {
??????? return mList.size();
??? }
??? @Override
??? public boolean isViewFromObject(View view, Object object) {
??????? return view == object;
??? }
??? /**
???? * 頁面寬度所占ViewPager測量寬度的權重比例,默認為1
???? */
??? @Override
??? public float getPageWidth(int position) {
??????? return (float) 0.8;
??? }
??? @Override
??? public void destroyItem(ViewGroup container, int position, Object object) {
??????? View view = (View) object;
??????? ((ViewPager) container).removeView(view);
??? }
??? @Override
??? public Object instantiateItem(ViewGroup container, int position) {
??????? // 自己實現
??????? return null;
??? }
}
?