List of usage examples for android.support.v4.view ViewPager setOnPageChangeListener
public void setOnPageChangeListener(OnPageChangeListener listener)
From source file:com.bei.test.view.tab.PagerSlidingTabStrip.java
public void setViewPager(ViewPager pager) { this.mPager = pager; if (pager.getAdapter() == null) { throw new IllegalStateException("ViewPager does not have adapter instance."); }/* w ww. java 2s .c o m*/ isCustomTabs = pager.getAdapter() instanceof CustomTabProvider; pager.setOnPageChangeListener(mPageListener); pager.getAdapter().registerDataSetObserver(mAdapterObserver); mAdapterObserver.setAttached(true); notifyDataSetChanged(); }
From source file:com.github.shareme.gwspagerslidingtabstrip.library.PagerSlidingTabStrip.java
@SuppressWarnings("deprecation") public void setViewPager(ViewPager pager) { this.mPager = pager; if (pager.getAdapter() == null) { throw new IllegalStateException("ViewPager does not have adapter instance."); }/*from ww w . j a va 2 s. com*/ isCustomTabs = pager.getAdapter() instanceof CustomTabProvider; //TODO: depreciated fix pager.setOnPageChangeListener(mPageListener); pager.getAdapter().registerDataSetObserver(mAdapterObserver); mAdapterObserver.setAttached(true); notifyDataSetChanged(); }
From source file:com.qingsongchou.library.widget.tab.PagerSlidingTabStrip.java
public void setViewPager(ViewPager pager) { this.mPager = pager; if (pager.getAdapter() == null) { throw new IllegalStateException("ViewPager does not have adapter instance."); }/*from w ww . j a v a2 s .co m*/ isCustomTabs = pager.getAdapter() instanceof CustomTabProvider; pager.setOnPageChangeListener(mPageListener); pager.getAdapter().registerDataSetObserver(mAdapterObserver); mAdapterObserver.setAttached(true); configTab(); }
From source file:com.audiokernel.euphonyrmt.MainMenuActivity.java
private ViewPager initializeNowPlayingPager() { final ViewPager nowPlayingPager = (ViewPager) findViewById(R.id.pager); if (nowPlayingPager != null) { nowPlayingPager.setAdapter(new MainMenuPagerAdapter()); nowPlayingPager.setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() { @Override/*from w w w . ja v a2 s . c o m*/ public void onPageSelected(final int position) { refreshQueueIndicator(position != 0); } }); } return nowPlayingPager; }
From source file:ti.modules.titanium.ui.widget.TiUIScrollableView.java
private ViewPager buildViewPager(Context context, ViewPagerAdapter adapter) { ViewPager pager = (new ViewPager(context) { @Override/* w ww.ja v a2s . c om*/ public boolean onTouchEvent(MotionEvent event) { if (mEnabled) { return super.onTouchEvent(event); } return false; } @Override public boolean onInterceptTouchEvent(MotionEvent event) { if (mEnabled) { return super.onInterceptTouchEvent(event); } return false; } }); pager.setAdapter(adapter); pager.setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() { private boolean isValidScroll = false; private boolean justFiredDragEnd = false; @Override public void onPageScrollStateChanged(int scrollState) { if ((scrollState == ViewPager.SCROLL_STATE_IDLE) && isValidScroll) { int oldIndex = mCurIndex; if (mCurIndex >= 0) { if (oldIndex >= 0 && oldIndex != mCurIndex && oldIndex < mViews.size()) { // Don't know what these focused and unfocused // events are good for, but they were in our previous // scrollable implementation. // cf. https://github.com/appcelerator/titanium_mobile/blob/20335d8603e2708b59a18bafbb91b7292278de8e/android/modules/ui/src/ti/modules/titanium/ui/widget/TiScrollableView.java#L260 TiEventHelper.fireFocused(mViews.get(oldIndex)); } TiEventHelper.fireUnfocused(mViews.get(mCurIndex)); if (oldIndex >= 0) { // oldIndex will be -1 if the view has just // been created and is setting currentPage // to something other than 0. In that case we // don't want a `scrollend` to fire. ((ScrollableViewProxy) proxy).fireScrollEnd(mCurIndex, mViews.get(mCurIndex)); } if (shouldShowPager()) { showPager(); } } // If we don't use this state variable to check if it's a valid // scroll, this event will fire when the view is first created // because on creation, the scroll state is initialized to // `idle` and this handler is called. isValidScroll = false; } else if (scrollState == ViewPager.SCROLL_STATE_SETTLING) { ((ScrollableViewProxy) proxy).fireDragEnd(mCurIndex, mViews.get(mCurIndex)); // Note that we just fired a `dragend` so the `onPageSelected` // handler below doesn't fire a `scrollend`. Read below comment. justFiredDragEnd = true; } } @Override public void onPageSelected(int page) { // If we didn't just fire a `dragend` event then this is the case // where a user drags the view and settles it on a different view. // Since the OS settling logic is never run, the // `onPageScrollStateChanged` handler is never run, and therefore // we forgot to inform the Javascripters that the user just scrolled // their thing. if (!justFiredDragEnd && mCurIndex != -1) { ((ScrollableViewProxy) proxy).fireScrollEnd(mCurIndex, mViews.get(mCurIndex)); if (shouldShowPager()) { showPager(); } } } @Override public void onPageScrolled(int positionRoundedDown, float positionOffset, int positionOffsetPixels) { isValidScroll = true; // When we touch and drag the view and hold it inbetween the second // and third sub-view, this function will have been called with values // similar to: // positionRoundedDown: 1 // positionOffset: 0.5 // ie, the first parameter is always rounded down; the second parameter // is always just an offset between the current and next view, it does // not take into account the current view. // If we add positionRoundedDown to positionOffset, positionOffset will // have the 'correct' value; ie, will be a natural number when we're on // one particular view, something.5 when inbetween views, etc. float positionFloat = positionOffset + positionRoundedDown; // `positionFloat` can now be used to calculate the correct value for // the current index. We add 0.5 so that positionFloat will be rounded // half up; ie, if it has a value of 1.5, it will be rounded up to 2; if // it has a value of 1.4, it will be rounded down to 1. mCurIndex = (int) Math.floor(positionFloat + 0.5); ((ScrollableViewProxy) proxy).fireScroll(mCurIndex, positionFloat, mViews.get(mCurIndex)); // Note that we didn't just fire a `dragend`. See the above comment // in `onPageSelected`. justFiredDragEnd = false; } }); return pager; }
From source file:piuk.blockchain.android.ui.WalletAddressesActivity.java
@Override protected void onCreate(final Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.address_book_content); final ActionBarFragment actionBar = getActionBarFragment(); actionBar.setPrimaryTitle(R.string.address_book_activity_title); actionBar.setBack(new OnClickListener() { public void onClick(final View v) { finish();/*from ww w. j ava 2s . c o m*/ } }); actionBar.addButton(android.R.drawable.ic_menu_more).setOnClickListener(new OnClickListener() { public void onClick(final View v) { openOptionsMenu(); } }); final ViewPager pager = (ViewPager) findViewById(R.id.address_book_pager); if (pager != null) { final ViewPagerTabs pagerTabs = (ViewPagerTabs) findViewById(R.id.address_book_pager_tabs); pagerTabs.addTabLabels(R.string.address_book_list_receiving_title, R.string.address_book_list_archived_title, R.string.address_book_list_sending_title); final ProxyOnPageChangeListener pagerListener = new ProxyOnPageChangeListener(pagerTabs) { @Override public void onPageSelected(final int position) { super.onPageSelected(position); pagerPosition = position; } }; final PagerAdapter pagerAdapter = new PagerAdapter(getSupportFragmentManager()); pager.getCurrentItem(); pager.setAdapter(pagerAdapter); pager.setOnPageChangeListener(pagerListener); final int position = getIntent().getBooleanExtra(EXTRA_SENDING, true) == true ? 2 : 0; pager.setCurrentItem(position); pager.setPageMargin(2); pager.setPageMarginDrawable(R.color.background_less_bright); pagerListener.onPageSelected(position); pagerListener.onPageScrolled(position, 0, 0); archivedAddressesFragment = new WalletArchivedAddressesFragment(); activeAddressesFragment = new WalletActiveAddressesFragment(); sendingAddressesFragment = new SendingAddressesFragment(); } updateFragments(); }
From source file:com.google.samples.apps.iosched.ui.SessionLivestreamActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { requestWindowFeature(Window.FEATURE_ACTION_BAR_OVERLAY); super.onCreate(savedInstanceState); setContentView(R.layout.activity_session_livestream); mIsTablet = UIUtils.isTablet(this); // Set up YouTube player mYouTubeFragment = (YouTubePlayerFragment) getFragmentManager().findFragmentById(R.id.livestream_player); mYouTubeFragment.initialize(Config.YOUTUBE_API_KEY, this); // Views that are common over all layouts mMainLayout = (LinearLayout) findViewById(R.id.livestream_mainlayout); adjustMainLayoutForActionBar();//from w w w . j a v a2s.c o m mPlayerContainer = (LinearLayout) findViewById(R.id.livestream_player_container); mFullscreenCaptions = (FrameLayout) findViewById(R.id.fullscreen_captions); final LayoutParams params = (LayoutParams) mFullscreenCaptions.getLayoutParams(); params.setMargins(0, getActionBarHeightPx(), 0, getActionBarHeightPx()); mFullscreenCaptions.setLayoutParams(params); mTabsContentLayout = (LinearLayout) findViewById(R.id.livestream_tabs_layout); // Set up ViewPager and adapter ViewPager viewPager = (ViewPager) findViewById(R.id.livestream_pager); viewPager.setOffscreenPageLimit(2); viewPager.setPageMargin(getResources().getDimensionPixelSize(R.dimen.page_margin_width)); mTabsAdapter = new TabsAdapter(getFragmentManager()); viewPager.setAdapter(mTabsAdapter); viewPager.setOnPageChangeListener(mTabsAdapter); if (mIsTablet) { // Tablet UI specific views mVideoLayout = (LinearLayout) findViewById(R.id.livestream_video_layout); } mTabsAdapter.addTab(getString(R.string.session_livestream_info), new SessionSummaryFragment(), TABNUM_SESSION_SUMMARY); mTabsAdapter.addTab(getString(R.string.session_livestream_captions), new SessionCaptionsFragment(), TABNUM_LIVE_CAPTIONS); // Set up sliding tabs w/ViewPager SlidingTabLayout slidingTabLayout = (SlidingTabLayout) findViewById(R.id.livestream_sliding_tabs); slidingTabLayout.setCustomTabView(R.layout.tab_indicator, android.R.id.text1); Resources res = getResources(); slidingTabLayout.setSelectedIndicatorColors(res.getColor(R.color.tab_selected_strip)); slidingTabLayout.setDistributeEvenly(true); slidingTabLayout.setViewPager(viewPager); // Reload all other data in this activity reloadFromIntent(getIntent()); // Update layout based on current configuration updateLayout(getResources().getConfiguration()); // Set up action bar if (!mLoadFromExtras) { // Start sessions query to populate action bar navigation spinner getLoaderManager().initLoader(SessionsQuery._TOKEN, null, this); mLivestreamAdapter = new LivestreamAdapter(getActionBar().getThemedContext()); } }
From source file:net.ibaixin.chat.view.PagerSlidingTabStrip.java
public void setViewPager(ViewPager viewPager) { if (mViewPager == viewPager) { return;/*from w w w .j ava 2 s . co m*/ } if (mViewPager != null) { mViewPager.setOnPageChangeListener(null); } final PagerAdapter adapter = viewPager.getAdapter(); if (adapter == null) { throw new IllegalStateException("ViewPager does not have adapter instance."); } this.mViewPager = viewPager; // viewPager.setOnPageChangeListener(pageListener); viewPager.setOnPageChangeListener(this); notifyDataSetChanged(); }
From source file:com.nachiket.titan.LibraryActivity.java
@Override public void onCreate(Bundle state) { super.onCreate(state); if (state == null) { checkForLaunch(getIntent());//from ww w . jav a 2 s . co m } setContentView(R.layout.library_content); mSearchBox = findViewById(R.id.search_box); mTextFilter = (TextView) findViewById(R.id.filter_text); mTextFilter.addTextChangedListener(this); mClearButton = findViewById(R.id.clear_button); mClearButton.setOnClickListener(this); mLimiterScroller = (HorizontalScrollView) findViewById(R.id.limiter_scroller); mLimiterViews = (ViewGroup) findViewById(R.id.limiter_layout); LibraryPagerAdapter pagerAdapter = new LibraryPagerAdapter(this, mLooper); mPagerAdapter = pagerAdapter; ViewPager pager = (ViewPager) findViewById(R.id.pager); pager.setAdapter(pagerAdapter); mViewPager = pager; SharedPreferences settings = PlaybackService.getSettings(this); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { pager.setOnPageChangeListener(pagerAdapter); View controls = getLayoutInflater().inflate(R.layout.actionbar_controls, null); mTitle = (TextView) controls.findViewById(R.id.title); mArtist = (TextView) controls.findViewById(R.id.artist); mCover = (ImageView) controls.findViewById(R.id.cover); controls.setOnClickListener(this); mActionControls = controls; } else { TabPageIndicator tabs = new TabPageIndicator(this); tabs.setViewPager(pager); tabs.setOnPageChangeListener(pagerAdapter); mTabs = tabs; LinearLayout content = (LinearLayout) findViewById(R.id.content); content.addView(tabs, 0, new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT)); if (settings.getBoolean(PrefKeys.CONTROLS_IN_SELECTOR, false)) { getLayoutInflater().inflate(R.layout.library_controls, content, true); mControls = findViewById(R.id.controls); mTitle = (TextView) mControls.findViewById(R.id.title); mArtist = (TextView) mControls.findViewById(R.id.artist); mCover = (ImageView) mControls.findViewById(R.id.cover); View previous = mControls.findViewById(R.id.previous); mPlayPauseButton = (ImageButton) mControls.findViewById(R.id.play_pause); View next = mControls.findViewById(R.id.next); mCover.setOnClickListener(this); previous.setOnClickListener(this); mPlayPauseButton.setOnClickListener(this); next.setOnClickListener(this); mShuffleButton = (ImageButton) findViewById(R.id.shuffle); mShuffleButton.setOnClickListener(this); registerForContextMenu(mShuffleButton); mEndButton = (ImageButton) findViewById(R.id.end_action); mEndButton.setOnClickListener(this); registerForContextMenu(mEndButton); mEmptyQueue = findViewById(R.id.empty_queue); mEmptyQueue.setOnClickListener(this); } } loadTabOrder(); int page = settings.getInt(PrefKeys.LIBRARY_PAGE, 0); if (page != 0) { pager.setCurrentItem(page); } loadAlbumIntent(getIntent()); }
From source file:com.saarang.samples.apps.iosched.ui.SessionLivestreamActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { requestWindowFeature(Window.FEATURE_ACTION_BAR_OVERLAY); super.onCreate(savedInstanceState); setContentView(com.saarang.samples.apps.iosched.R.layout.activity_session_livestream); mIsTablet = UIUtils.isTablet(this); // Set up YouTube player mYouTubeFragment = (YouTubePlayerFragment) getFragmentManager() .findFragmentById(com.saarang.samples.apps.iosched.R.id.livestream_player); mYouTubeFragment.initialize(Config.YOUTUBE_API_KEY, this); // Views that are common over all layouts mMainLayout = (LinearLayout) findViewById(com.saarang.samples.apps.iosched.R.id.livestream_mainlayout); adjustMainLayoutForActionBar();//from w ww .j ava 2 s. co m mPlayerContainer = (LinearLayout) findViewById( com.saarang.samples.apps.iosched.R.id.livestream_player_container); mFullscreenCaptions = (FrameLayout) findViewById(com.saarang.samples.apps.iosched.R.id.fullscreen_captions); final LayoutParams params = (LayoutParams) mFullscreenCaptions.getLayoutParams(); params.setMargins(0, getActionBarHeightPx(), 0, getActionBarHeightPx()); mFullscreenCaptions.setLayoutParams(params); mTabsContentLayout = (LinearLayout) findViewById( com.saarang.samples.apps.iosched.R.id.livestream_tabs_layout); // Set up ViewPager and adapter ViewPager viewPager = (ViewPager) findViewById(com.saarang.samples.apps.iosched.R.id.livestream_pager); viewPager.setOffscreenPageLimit(2); viewPager.setPageMargin( getResources().getDimensionPixelSize(com.saarang.samples.apps.iosched.R.dimen.page_margin_width)); mTabsAdapter = new TabsAdapter(getFragmentManager()); viewPager.setAdapter(mTabsAdapter); viewPager.setOnPageChangeListener(mTabsAdapter); if (mIsTablet) { // Tablet UI specific views mVideoLayout = (LinearLayout) findViewById( com.saarang.samples.apps.iosched.R.id.livestream_video_layout); } mTabsAdapter.addTab(getString(com.saarang.samples.apps.iosched.R.string.session_livestream_info), new SessionSummaryFragment(), TABNUM_SESSION_SUMMARY); mTabsAdapter.addTab(getString(com.saarang.samples.apps.iosched.R.string.session_livestream_captions), new SessionCaptionsFragment(), TABNUM_LIVE_CAPTIONS); // Set up sliding tabs w/ViewPager SlidingTabLayout slidingTabLayout = (SlidingTabLayout) findViewById( com.saarang.samples.apps.iosched.R.id.livestream_sliding_tabs); slidingTabLayout.setCustomTabView(com.saarang.samples.apps.iosched.R.layout.tab_indicator, android.R.id.text1); Resources res = getResources(); slidingTabLayout.setSelectedIndicatorColors( res.getColor(com.saarang.samples.apps.iosched.R.color.tab_selected_strip)); slidingTabLayout.setDistributeEvenly(true); slidingTabLayout.setViewPager(viewPager); // Reload all other data in this activity reloadFromIntent(getIntent()); // Update layout based on current configuration updateLayout(getResources().getConfiguration()); // Set up action bar if (!mLoadFromExtras) { // Start sessions query to populate action bar navigation spinner getLoaderManager().initLoader(SessionsQuery._TOKEN, null, this); mLivestreamAdapter = new LivestreamAdapter(getActionBar().getThemedContext()); } }