android.support.v4.view.ViewPager#getCurrentItem ( )源码实例Demo

下面列出了android.support.v4.view.ViewPager#getCurrentItem ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: scene   文件: ScenePageAdapter.java
private void configSceneUserVisibleHint(ViewPager viewPager, UserVisibleHintGroupScene scene, int position) {
    if (mCurrentScene == null) {
        int currentItem = viewPager.getCurrentItem();
        if (currentItem == position) {
            mCurrentScene = scene;
        }
    }

    boolean visible = scene == mCurrentScene;
    if (visible) {
        if (scene.getUserVisibleHint()) {
            //to ensure that the behavior will be consistent with FragmentPagerAdapter
            scene.setUserVisibleHint(false);
        }
        scene.setUserVisibleHint(true);
    } else {
        if (scene.getUserVisibleHint()) {
            scene.setUserVisibleHint(false);
        }
    }
}
 
源代码2 项目: FragmentBackHandler   文件: BackHandlerHelper.java
/**
 * 将back事件分发给ViewPager中的Fragment,{@link #handleBackPress(FragmentManager)} 已经实现了对ViewPager的支持,所以自行决定是否使用该方法
 *
 * @return 如果处理了back键则返回 <b>true</b>
 * @see #handleBackPress(FragmentManager)
 * @see #handleBackPress(Fragment)
 * @see #handleBackPress(FragmentActivity)
 */
public static boolean handleBackPress(ViewPager viewPager) {
    if (viewPager == null) return false;

    PagerAdapter adapter = viewPager.getAdapter();

    if (adapter == null) return false;

    int currentItem = viewPager.getCurrentItem();
    Fragment fragment;
    if (adapter instanceof FragmentPagerAdapter) {
        fragment = ((FragmentPagerAdapter) adapter).getItem(currentItem);
    } else if (adapter instanceof FragmentStatePagerAdapter) {
        fragment = ((FragmentStatePagerAdapter) adapter).getItem(currentItem);
    } else {
        fragment = null;
    }
    return isFragmentBackHandled(fragment);
}
 
源代码3 项目: GithubApp   文件: AppIntroBase.java
@Override
public boolean onKeyDown(int code, KeyEvent event) {
    if (code == KeyEvent.KEYCODE_ENTER || code == KeyEvent.KEYCODE_BUTTON_A ||
            code == KeyEvent.KEYCODE_DPAD_CENTER) {
        ViewPager vp = (ViewPager) this.findViewById(R.id.view_pager);
        if (vp.getCurrentItem() == vp.getAdapter().getCount() - 1) {
            onDonePressed(fragments.get(vp.getCurrentItem()));
        } else {
            vp.setCurrentItem(vp.getCurrentItem() + 1);
        }

        return false;
    }

    return super.onKeyDown(code, event);
}
 
源代码4 项目: CreditCardView   文件: CardEditActivity.java
public void showNext() {
    final ViewPager pager = (ViewPager) findViewById(R.id.card_field_container_pager);
    CardFragmentAdapter adapter = (CardFragmentAdapter) pager.getAdapter();

    int max = adapter.getCount();
    int currentIndex = pager.getCurrentItem();

    if (currentIndex + 1 < max) {

        pager.setCurrentItem(currentIndex + 1);
    } else {
        // completed the card entry.
        setKeyboardVisibility(false);
    }

    refreshNextButton();
}
 
源代码5 项目: nono-android   文件: BallTabLayout.java
public void setupWithViewPager(@NonNull ViewPager viewPager){
    final PagerAdapter adapter = viewPager.getAdapter();
    mViewPagerAdapterWrapper = new WeakReference<PagerAdapter>(adapter);
    if (adapter == null) {
        throw new IllegalArgumentException("ViewPager does not have a PagerAdapter set");
    }
    // First we'll add Tabs, using the adapter's page titles
    setTabsFromPagerAdapter(adapter);

    // Now we'll add our page change listener to the ViewPager
    viewPager.addOnPageChangeListener(new BallTabLayoutOnPageChangeListener(this));

    // Now we'll add a tab selected listener to set ViewPager's current item
    setOnTabSelectedListener(new ViewPagerOnBallTabSelectedListener(viewPager));

    // Make sure we reflect the currently set ViewPager item
    if (adapter.getCount() > 0) {
        final int curItem = viewPager.getCurrentItem();
        if (getSelectedTabPosition() != curItem) {
            selectTab(getTabAt(curItem));
        }
    }
}
 
源代码6 项目: ImageLoader   文件: ImageMediaCenterUtil.java
private static void showFileInfo(ViewPager viewPager, List<String> urls, final Context context) {
    int position = viewPager.getCurrentItem();
    String url = urls.get(position);

    ImageLoader.getActualLoader().getFileFromDiskCache(url, new FileGetter() {
        @Override
        public void onSuccess(File file, int width, int height) {
            String text = file.getAbsolutePath();
            text += "\n" + MyUtil.formatFileSize(file.length());
            text += "\nw"+ width+"x"+height +"\n";
            text += MyUtil.printExif(file.getAbsolutePath());

            View view = View.inflate(context,R.layout.html,null);
            TextView textView = view.findViewById(R.id.tv_html);
            textView.setText(text);
            new AlertDialog.Builder(context)
                    .setView(view)
                    .create().show();
        }

        @Override
        public void onFail(Throwable e) {
            e.printStackTrace();

        }
    });





}
 
源代码7 项目: ZoomPreviewPicture   文件: BezierBannerView.java
/**
 * 绑定viewpager
 * @param viewPager viewPager
 */
public void attachToViewpager(ViewPager viewPager) {
    viewPager.addOnPageChangeListener(this);
    count = viewPager.getAdapter().getCount();
    mSelectedIndex=viewPager.getCurrentItem();
    moveToNext();
    mDrection=DIRECTION_RIGHT;
    invalidate();
}
 
源代码8 项目: tapchat-android   文件: MainActivity.java
private int getCurrentIndex() {
    ViewPager view = (ViewPager) findViewById(R.id.pager);
    if (view != null) {
        return view.getCurrentItem();
    } else {
        return -1;
    }
}
 
源代码9 项目: AndroidBase   文件: PullToRefreshViewPager.java
@Override
protected boolean isReadyForPullStart() {
	ViewPager refreshableView = getRefreshableView();

	PagerAdapter adapter = refreshableView.getAdapter();
	if (null != adapter) {
		return refreshableView.getCurrentItem() == 0;
	}

	return false;
}
 
源代码10 项目: BubbleTab   文件: BubbleTab.java
public void setupWithViewPager(final ViewPager viewPager) {
    this.viewPager = viewPager;

    viewPager.addOnPageChangeListener(pageChangeListener);

    final int currentItem = viewPager.getCurrentItem();
    for (int i = 0; i < icons.size(); i++) {
        icons.get(i).setSelected(i == currentItem);
    }

    circle.setTranslationX(tabWidth * currentItem);
    postInvalidate();
}
 
源代码11 项目: CreditCardView   文件: CardEditActivity.java
public void showPrevious() {
    final ViewPager pager = (ViewPager) findViewById(R.id.card_field_container_pager);
    int currentIndex = pager.getCurrentItem();

    if (currentIndex == 0) {
        setResult(RESULT_CANCELED);
        finish();
    }

    if (currentIndex - 1 >= 0) {
        pager.setCurrentItem(currentIndex - 1);
    }

    refreshNextButton();
}
 
源代码12 项目: MousePaint   文件: PlayViewHandler.java
@Override
public void handleMessage(Message msg) {
	switch (msg.what) {
	case 0x123:
		final int count = msg.arg1;
		playingDirection = msg.arg2;
		final ViewPager viewPager = (ViewPager) msg.obj;
		int i = viewPager.getCurrentItem();
		if (playingDirection == 0) {
			if (i == count - 1) {
				playingDirection = -1;
				i--;
			} else {
				i++;
			}
		} else {
			if (i == count-1) {
				playingDirection = 1;
				i=0;
			} else {
				i++;
			}
		}

		viewPager.setCurrentItem(i, false);
		if (play) {
			postDelayed(new Runnable() {

				@Override
				public void run() {
					slidingPlayView(viewPager, count, playingDirection);
				}
			}, DEFAULT_TIME);
		}
		break;
	}
	super.handleMessage(msg);
}
 
源代码13 项目: oneHookLibraryAndroid   文件: PagerIndicator.java
public void setViewPager(final ViewPager viewPager) {
    if (viewPager != null) {
        viewPager.addOnPageChangeListener(this);
        if (viewPager.getAdapter() == null) {
            throw new RuntimeException("Set View pager's adapter before you call setViewPager");
        }
        final PagerAdapter adapter = viewPager.getAdapter();
        if (adapter instanceof InfinitePagerAdapter<?>) {
            mRealItemCount = ((InfinitePagerAdapter<?>) adapter).getWrappedPagerAdapter().getCount();
        } else {
            mRealItemCount = adapter.getCount();
        }

        final int itemCount = mRealItemCount;
        mDotDrawables = new DotDrawable[itemCount];
        mDots = new View[itemCount];
        for (int i = 0; i < itemCount; i++) {
            final View view = new View(getContext());
            mDotDrawables[i] = new DotDrawable(i == viewPager.getCurrentItem() ? mSelectedDotColor : mDefaultDotColor);
            mDots[i] = view;
            if (Build.VERSION.SDK_INT <= 15) {
                view.setBackgroundDrawable(mDotDrawables[i]);
            } else {
                view.setBackground(mDotDrawables[i]);
            }
            view.setLayoutParams(obtainLayoutParams());
            addView(view);
        }
    }
}
 
源代码14 项目: ONE-Unofficial   文件: PullToRefreshViewPager.java
@Override
protected boolean isReadyForPullEnd() {
    ViewPager refreshableView = getRefreshableView();

    PagerAdapter adapter = refreshableView.getAdapter();
    if (null != adapter) {
        return refreshableView.getCurrentItem() == adapter.getCount() - 1;
    }

    return false;
}
 
源代码15 项目: CumulusTV   文件: Intro.java
@Override
public boolean onKeyDown(int code, KeyEvent kvent) {
    if(code == KeyEvent.KEYCODE_DPAD_CENTER) {
        ViewPager vp = (ViewPager)this.findViewById(com.github.paolorotolo.appintro.R.id.view_pager);
        if(vp.getCurrentItem() == vp.getAdapter().getCount()-1) {
            onDonePressed();
        } else {
            vp.setCurrentItem(vp.getCurrentItem()+1);
        }
        return false;
    }
    return super.onKeyDown(code, kvent);
}
 
源代码16 项目: MiBandDecompiled   文件: y.java
public boolean canScrollHorizontal(View view, int i)
{
    ViewPager viewpager = (ViewPager)view;
    PagerAdapter pageradapter = viewpager.getAdapter();
    if (pageradapter != null && pageradapter.getCount() != 0)
    {
        int j = viewpager.getCurrentItem();
        if (i < 0 && j < -1 + pageradapter.getCount() || i > 0 && j > 0)
        {
            return true;
        }
    }
    return false;
}
 
源代码17 项目: EasySlidingTabs   文件: EasySlidingTabs.java
/**
 * Set the view pager
 *
 * @param pager pager
 */
public void setViewPager(ViewPager pager) {
    // TODO tmp strategy
    if (pager == null || pager.getAdapter() == null) {
        return;
    }
    this.pager = pager;
    this.selectedPosition = pager.getCurrentItem();
    if (pager.getAdapter() == null) {
        throw new IllegalStateException("ViewPager does not have adapter instance.");
    }
    pager.addOnPageChangeListener(pageListener);
    this.notifyDataSetChanged();
    this.setTabsValue();
}
 
源代码18 项目: SlideActivity   文件: SlideLayout.java
private boolean canViewPagerScroll(ViewPager p, int dx) {
    if (dx == 0) return false;

    final int index = p.getCurrentItem();
    return !(dx > 0 && index <= 0 || dx < 0
            && index >= p.getAdapter().getCount() - 1);
}
 
源代码19 项目: UltimateAndroid   文件: SlidingLayout.java
boolean canViewPagerScrollHorizontally(ViewPager p, int dx) {
    return !(dx < 0 && p.getCurrentItem() <= 0 ||
            0 < dx && p.getAdapter().getCount() - 1 <= p.getCurrentItem());
}
 
源代码20 项目: CreditCardView   文件: CardEditActivity.java
public void refreshNextButton() {
    ViewPager pager = (ViewPager) findViewById(R.id.card_field_container_pager);

    int max = pager.getAdapter().getCount();

    int text = R.string.next;

    if (pager.getCurrentItem() == max - 1) {
        text = R.string.done;
    }

    ((TextView) findViewById(R.id.next)).setText(text);
}