Example usage for android.support.v4.view ViewPager setCurrentItem

List of usage examples for android.support.v4.view ViewPager setCurrentItem

Introduction

In this page you can find the example usage for android.support.v4.view ViewPager setCurrentItem.

Prototype

public void setCurrentItem(int item, boolean smoothScroll) 

Source Link

Document

Set the currently selected page.

Usage

From source file:com.alex.view.tab.TabLayout.java

public void applyConfigurationWithViewPager(@NonNull final ViewPager viewPager,
        final boolean alphaTransformEnabled) {
    viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
        @Override//from   w w w .j av  a2s.  co  m
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
            if (mIndicatorShape != SHAPE_NONE && mIndicatorAnimEnabled) {
                scrollIndicatorTo(position, positionOffset);
            }

            if (alphaTransformEnabled) {
                scrollTabTo(position, positionOffset);
            }
        }

        @Override
        public void onPageSelected(int position) {
            setCurrentTab(position);
        }

        @Override
        public void onPageScrollStateChanged(int state) {
            if (mIndicatorShape != SHAPE_NONE && mIndicatorAnimEnabled && mIndicatorBounceEnabled) {
                updateState();
            }
        }
    });

    // ??
    if (mListener == null) {
        mListener = new OnTabSelectedListener() {
            @Override
            public void onTabSelect(View view, int position) {
                viewPager.setCurrentItem(position, false);
            }

            @Override
            public void onTabReselect(View view, int position) {

            }
        };
        addOnTabSelectedListener();
    }
}

From source file:com.battlelancer.seriesguide.ui.EpisodeDetailsActivity.java

private void setupViews() {
    // get episode id
    final int episodeId = getIntent().getIntExtra(InitBundle.EPISODE_TVDBID, 0);
    if (episodeId == 0) {
        // nothing to display
        finish();//  www.ja  va2  s . c  o  m
        return;
    }

    // get show and season id, poster path
    final Cursor episode = getContentResolver().query(
            Episodes.buildEpisodeWithShowUri(String.valueOf(episodeId)),
            new String[] { Seasons.REF_SEASON_ID, Shows.POSTER, Shows.REF_SHOW_ID, Shows.TITLE }, null, null,
            null);
    if (episode == null || !episode.moveToFirst()) {
        // nothing to display
        if (episode != null) {
            episode.close();
        }
        finish();
        return;
    }

    setupActionBar(episode.getString(3));

    // set show poster as background
    Utils.loadPosterBackground(this, (ImageView) findViewById(R.id.background), episode.getString(1));

    mShowId = episode.getInt(2);
    mSeasonId = episode.getInt(0);
    episode.close();

    // get episodes of season
    Constants.EpisodeSorting sortOrder = DisplaySettings.getEpisodeSortOrder(this);
    Cursor episodesOfSeason = getContentResolver().query(
            Episodes.buildEpisodesOfSeasonUri(String.valueOf(mSeasonId)),
            new String[] { Episodes._ID, Episodes.NUMBER, Episodes.SEASON }, null, null, sortOrder.query());

    ArrayList<Episode> episodes = new ArrayList<>();
    int startPosition = 0;
    if (episodesOfSeason != null) {
        int i = 0;
        while (episodesOfSeason.moveToNext()) {
            Episode ep = new Episode();
            int curEpisodeId = episodesOfSeason.getInt(0);
            // look for episode to show initially
            if (curEpisodeId == episodeId) {
                startPosition = i;
            }
            ep.episodeId = curEpisodeId;
            ep.episodeNumber = episodesOfSeason.getInt(1);
            ep.seasonNumber = episodesOfSeason.getInt(2);
            episodes.add(ep);
            i++;
        }
        episodesOfSeason.close();
    }

    // setup adapter
    EpisodePagerAdapter adapter = new EpisodePagerAdapter(this, getSupportFragmentManager(), episodes, false);

    // setup view pager
    ViewPager pager = (ViewPager) findViewById(R.id.pagerEpisodeDetails);
    pager.setAdapter(adapter);

    // setup tabs
    SlidingTabLayout tabs = (SlidingTabLayout) findViewById(R.id.tabsEpisodeDetails);
    tabs.setCustomTabView(R.layout.tabstrip_item, R.id.textViewTabStripItem);
    tabs.setSelectedIndicatorColors(
            getResources().getColor(Utils.resolveAttributeToResourceId(getTheme(), R.attr.colorAccent)));
    tabs.setBottomBorderColor(Utils.setColorAlpha(getResources()
            .getColor(Utils.resolveAttributeToResourceId(getTheme(), R.attr.sgColorTabStripUnderline)), 0x26));
    tabs.setViewPager(pager);

    if (AndroidUtils.isKitKatOrHigher()) {
        // fix padding with translucent status bar
        // warning: status bar not always translucent (e.g. Nexus 10)
        // (using fitsSystemWindows would not work correctly with multiple views)
        SystemBarTintManager systemBarTintManager = new SystemBarTintManager(this);
        SystemBarTintManager.SystemBarConfig config = systemBarTintManager.getConfig();
        ViewGroup contentContainer = (ViewGroup) findViewById(R.id.contentContainerEpisodeDetails);
        contentContainer.setPadding(0, config.getPixelInsetTop(false), 0, 0);
    }

    // set current item
    pager.setCurrentItem(startPosition, false);
}

From source file:de.baumann.hhsmoodle.HHS_MainScreen.java

private void setupViewPager(ViewPager viewPager) {

    final String startTab = sharedPref.getString("tabMain", "1");
    final int startTabInt = Integer.parseInt(startTab);
    ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager());

    adapter.addFragment(new FragmentBrowser(), String.valueOf(getString(R.string.title_browser)));
    adapter.addFragment(new Bookmarks_Fragment(), String.valueOf(getString(R.string.title_bookmarks)));
    adapter.addFragment(new Todo_Fragment(), String.valueOf(getString(R.string.todo_title)));
    adapter.addFragment(new Notes_Fragment(), String.valueOf(getString(R.string.title_notes)));
    adapter.addFragment(new Count_Fragment(), String.valueOf(getString(R.string.count_title)));
    adapter.addFragment(new Schedule_Fragment(), String.valueOf(getString(R.string.schedule_title)));
    adapter.addFragment(new Files_Fragment(), String.valueOf(getString(R.string.choose_titleMain)));
    adapter.addFragment(new Random_Fragment(), String.valueOf(getString(R.string.number_title)));
    adapter.addFragment(new Courses_Fragment(), String.valueOf(getString(R.string.courseList_title)));
    adapter.addFragment(new Subjects_Fragment(), String.valueOf(getString(R.string.subjects_title)));
    adapter.addFragment(new FragmentGrades(), String.valueOf(getString(R.string.action_grades)));

    viewPager.setAdapter(adapter);// w  w  w. j  a  va 2 s .c om
    viewPager.setCurrentItem(startTabInt, true);
}

From source file:im.actor.sdk.view.emoji.keyboard.emoji.EmojiKeyboard.java

@Override
protected View createView() {
    final View emojiPagerView = LayoutInflater.from(activity).inflate(R.layout.emoji_smiles_pager, null);

    final ViewPager emojiPager = (ViewPager) emojiPagerView.findViewById(R.id.emoji_pager);

    final PagerSlidingTabStrip emojiPagerIndicator = (PagerSlidingTabStrip) emojiPagerView
            .findViewById(R.id.emoji_pager_indicator);
    View backspace = emojiPagerView.findViewById(R.id.backspace);
    final View backToSmiles = emojiPagerView.findViewById(R.id.back_to_smiles);
    final View indicatorContainer = emojiPagerView.findViewById(R.id.indicator_container);
    stickerIndicatorContainer = emojiPagerView.findViewById(R.id.sticker_indicator_container);
    stickerSwitchContainer = emojiPagerView.findViewById(R.id.sticker_switch_container);

    emojiPagerIndicator.setTabBackground(R.drawable.clickable_background);
    emojiPagerIndicator.setIndicatorColorResource(R.color.primary);
    emojiPagerIndicator.setIndicatorHeight(Screen.dp(2));
    emojiPagerIndicator.setDividerColor(0x00000000);
    emojiPagerIndicator.setUnderlineHeight(0);
    emojiPagerIndicator.setTabLayoutParams(new LinearLayout.LayoutParams(Screen.dp(48), Screen.dp(48)));

    backspace.setOnTouchListener(new RepeatListener(500, 100, new OnClickListener() {
        @Override//from  w  ww .  j  av  a2  s. co  m
        public void onClick(View v) {
            onBackspaceClick(v);
        }
    }));

    mEmojisAdapter = new SmilePagerAdapter(this);
    mEmojisAdapter.setTabs(emojiPagerIndicator);
    emojiPager.setAdapter(mEmojisAdapter);
    emojiPagerIndicator.setViewPager(emojiPager);

    backToSmiles.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            emojiPager.setCurrentItem(3, false);

            ObjectAnimator oa = ObjectAnimator.ofFloat(indicatorContainer, "translationX", 0, 0);
            oa.setDuration(0);
            oa.start();
            if (stickerIndicatorContainer.getVisibility() == View.INVISIBLE) {
                stickerIndicatorContainer.setVisibility(View.VISIBLE);
            }
            ObjectAnimator oas = ObjectAnimator.ofFloat(stickerIndicatorContainer, "translationX",
                    Screen.getWidth(), Screen.getWidth());
            oas.setDuration(0);
            oas.start();

            emojiPager.setCurrentItem(1, true);

        }
    });

    final FrameLayout.LayoutParams lp = (FrameLayout.LayoutParams) stickerIndicatorContainer.getLayoutParams();

    emojiPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
        @Override
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
            if (position == 4) {

                ObjectAnimator oa = ObjectAnimator.ofFloat(indicatorContainer, "translationX",
                        indicatorContainer.getX(), -positionOffsetPixels);
                oa.setDuration(0);
                oa.start();
                if (stickerIndicatorContainer.getVisibility() == View.INVISIBLE) {
                    stickerIndicatorContainer.setVisibility(View.VISIBLE);
                }
                ObjectAnimator oas = ObjectAnimator.ofFloat(stickerIndicatorContainer, "translationX",
                        stickerIndicatorContainer.getX() + Screen.getWidth(),
                        -positionOffsetPixels + Screen.getWidth());
                oas.setDuration(0);
                oas.start();

            }
        }

        @Override
        public void onPageSelected(int position) {

        }

        @Override
        public void onPageScrollStateChanged(int state) {

        }
    });

    //emojiPagerIndicator.setLayoutParams(new RelativeLayout.LayoutParams(Screen.dp(58 * mEmojisAdapter.getCount()), Screen.dp(48)));
    //        emojiPager.postDelayed(new Runnable() {
    //            @Override
    //            public void run() {
    //                emojiPager.setAlpha(0f);
    //                emojiPagerIndicator.setAlpha(0f);
    //                animateView(emojiPager);
    //                animateView(emojiPagerIndicator);
    //                emojiPager.setAdapter(mEmojisAdapter);
    //                emojiPagerIndicator.setViewPager(emojiPager);
    //            }
    //        }, BINDING_DELAY);

    if (SmilesPack.getRecent().size() == 0) {
        emojiPager.setCurrentItem(1);
    }

    return emojiPagerView;
}

From source file:com.momock.outlet.tab.PagerTabOutlet.java

public void attach(TabHolder target) {
    Logger.check(target != null, "Parameter target cannot be null!");
    Logger.check(target.getTabContent() instanceof ViewPager,
            "The PagerTabOutlet must contains a ViewPager content!");
    this.target = target;
    final TabHost tabHost = target.getTabHost();
    final ViewPager tabContent = (ViewPager) target.getTabContent();
    plugs = getPlugs();//from   ww  w .j  av  a2 s . c  o  m

    ViewPager pager = (ViewPager) target.getTabContent();
    for (int i = 0; i < plugs.getItemCount(); i++) {
        ITabPlug plug = (ITabPlug) plugs.getItem(i);
        Logger.check(plug.getContent() instanceof ViewHolder,
                "The plug of PagerTabOutlet must include a ViewHolder!");
        ((ViewHolder) plug.getContent()).reset();
    }
    pager.setAdapter(new PagerAdapter() {

        @Override
        public int getCount() {
            return plugs.getItemCount();
        }

        @Override
        public boolean isViewFromObject(View view, Object object) {
            return view == object;
        }

        @Override
        public Object instantiateItem(ViewGroup container, int position) {
            ITabPlug plug = (ITabPlug) plugs.getItem(position);
            View view = ((ViewHolder) plug.getContent()).getView();
            container.addView(view);
            return view;
        }

        @Override
        public void destroyItem(ViewGroup container, int position, Object object) {
            container.removeView((View) object);
        }
    });

    tabContent.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {

        @Override
        public void onPageSelected(int position) {
            TabWidget widget = tabHost.getTabWidget();
            int oldFocusability = widget.getDescendantFocusability();
            widget.setDescendantFocusability(ViewGroup.FOCUS_BLOCK_DESCENDANTS);
            tabHost.setCurrentTab(position);
            widget.setDescendantFocusability(oldFocusability);
        }

        @Override
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

        }

        @Override
        public void onPageScrollStateChanged(int state) {

        }
    });
    tabHost.setup();
    tabHost.setOnTabChangedListener(new TabHost.OnTabChangeListener() {

        @Override
        public void onTabChanged(String tabId) {
            int index = tabHost.getCurrentTab();
            ITabPlug plug = (ITabPlug) plugs.getItem(index);
            setActivePlug(plug);
            tabContent.setCurrentItem(index, true);
        }
    });
    for (int i = 0; i < plugs.getItemCount(); i++) {
        final ITabPlug plug = (ITabPlug) plugs.getItem(i);
        Logger.check(plug.getContent() instanceof ViewHolder,
                "Plug in PagerTabOutlet must contains a ViewHolder content!");

        TabHost.TabSpec spec = tabHost.newTabSpec("" + i);
        target.setTabIndicator(spec, plug);
        spec.setContent(new TabContentFactory() {

            @Override
            public View createTabContent(String tag) {
                View v = new View(tabHost.getContext());
                v.setMinimumWidth(0);
                v.setMinimumHeight(0);
                return v;
            }

        });
        tabHost.addTab(spec);
        if (getActivePlug() == plug)
            tabHost.setCurrentTab(i);
    }
}

From source file:emojicon.EmojiconsFragment.java

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.emojicons, container, false);
    final ViewPager emojisPager = (ViewPager) view.findViewById(R.id.emojis_pager);
    emojisPager.setOnPageChangeListener(this);
    // we handle recents
    EmojiconRecents recents = this;
    mEmojisAdapter = new EmojisPagerAdapter(getFragmentManager(), Arrays.asList(
            //                EmojiconRecentsGridFragment.newInstance(mUseSystemDefault),
            EmojiconGridFragment.newInstance(People.DATA, recents, mUseSystemDefault)
    //                EmojiconGridFragment.newInstance(Nature.DATA, recents, mUseSystemDefault),
    //                EmojiconGridFragment.newInstance(Objects.DATA, recents, mUseSystemDefault),
    //                EmojiconGridFragment.newInstance(Places.DATA, recents, mUseSystemDefault),
    //                EmojiconGridFragment.newInstance(Symbols.DATA, recents, mUseSystemDefault)
    ));/*w  w  w.j a  v  a  2 s  .co  m*/
    emojisPager.setAdapter(mEmojisAdapter);

    //        mEmojiTabs = new View[6];
    //        mEmojiTabs[0] = view.findViewById(R.id.emojis_tab_0_recents);
    //        mEmojiTabs[1] = view.findViewById(R.id.emojis_tab_1_people);
    //        mEmojiTabs[2] = view.findViewById(R.id.emojis_tab_2_nature);
    //        mEmojiTabs[3] = view.findViewById(R.id.emojis_tab_3_objects);
    //        mEmojiTabs[4] = view.findViewById(R.id.emojis_tab_4_cars);
    //        mEmojiTabs[5] = view.findViewById(R.id.emojis_tab_5_punctuation);
    //        for (int i = 0; i < mEmojiTabs.length; i++) {
    //            final int position = i;
    //            mEmojiTabs[i].setOnClickListener(new View.OnClickListener() {
    //                @Override
    //                public void onClick(View v) {
    //                    emojisPager.setCurrentItem(position);
    //                }
    //            });
    //        }
    view.findViewById(R.id.emojis_backspace)
            .setOnTouchListener(new RepeatListener(1000, 50, new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    if (mOnEmojiconBackspaceClickedListener != null) {
                        mOnEmojiconBackspaceClickedListener.onEmojiconBackspaceClicked(v);
                    }
                }
            }));

    // get last selected page
    mRecentsManager = EmojiconRecentsManager.getInstance(view.getContext());
    int page = mRecentsManager.getRecentPage();
    // last page was recents, check if there are recents to use
    // if none was found, go to page 1
    if (page == 0 && mRecentsManager.size() == 0) {
        page = 1;
    }

    if (page == 0) {
        onPageSelected(page);
    } else {
        emojisPager.setCurrentItem(page, false);
    }
    return view;
}

From source file:com.momock.outlet.tab.FragmentPagerTabOutlet.java

public void attach(final FragmentTabHolder tabHolder) {
    Logger.check(tabHolder != null, "Parameter tabHolder cannot be null!");
    this.target = tabHolder;
    final TabHost tabHost = target.getTabHost();
    plugs = getPlugs();/* w  w  w. j  a  v  a2  s .  c  o m*/
    Logger.check(target.getTabContent() instanceof ViewPager, "The tab content container must be a ViewPager!");
    final ViewPager tabContent = (ViewPager) target.getTabContent();
    tabContent.setOffscreenPageLimit(plugs.getItemCount());
    tabContent.setAdapter(new FragmentPagerAdapter(target.getFragmentManager()) {

        @Override
        public Fragment getItem(final int position) {
            final ITabPlug plug = (ITabPlug) plugs.getItem(position);
            Fragment f = ((FragmentHolder) plug.getContent()).getFragment();
            if (f instanceof CaseFragment) {
                CaseFragment cf = (CaseFragment) f;
                cf.setActiveCaseIndicator(new IActiveCaseIndicator() {

                    @Override
                    public boolean isActiveCase() {
                        return getActivePlug() == plug;
                    }

                });
            }
            return f;
        }

        @Override
        public int getCount() {
            return plugs.getItemCount();
        }

        void doFinishUpdate(ViewGroup container) {
            super.finishUpdate(container);
        }

        @Override
        public void finishUpdate(final ViewGroup container) {
            new Handler().post(new Runnable() {

                @Override
                public void run() {
                    doFinishUpdate(container);
                }

            });
        }

        @Override
        public void setPrimaryItem(ViewGroup container, int position, final Object object) {
            super.setPrimaryItem(container, position, object);
            new Handler().post(new Runnable() {

                @Override
                public void run() {

                    if (object instanceof CaseFragment) {
                        CaseFragment cf = (CaseFragment) object;
                        if (cf.getCase() != null && cf.getCase().getParent() != null)
                            cf.getCase().getParent().setActiveCase(cf.getCase());
                    }
                }

            });
        }
    });
    tabHost.setup();
    for (int i = 0; i < plugs.getItemCount(); i++) {
        final ITabPlug plug = (ITabPlug) plugs.getItem(i);
        Logger.check(plug.getContent() instanceof FragmentHolder,
                "Plug in PagerTabOutlet must contains a FragmentHolder content!");

        TabHost.TabSpec spec = tabHost.newTabSpec("" + i);
        target.setTabIndicator(spec, plug);
        spec.setContent(new TabContentFactory() {

            @Override
            public View createTabContent(String tag) {
                View v = new View(tabHost.getContext());
                v.setMinimumWidth(0);
                v.setMinimumHeight(0);
                return v;
            }

        });
        tabHost.addTab(spec);
        if (getActivePlug() == plug) {
            tabHost.setCurrentTab(i);
            tabContent.setCurrentItem(i, true);
        }
    }
    tabHost.setOnTabChangedListener(new TabHost.OnTabChangeListener() {

        @Override
        public void onTabChanged(String tabId) {
            int index = tabHost.getCurrentTab();
            ITabPlug plug = (ITabPlug) plugs.getItem(index);
            setActivePlug(plug);
            tabContent.setCurrentItem(index, true);
        }
    });
    tabContent.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
        @Override
        public void onPageSelected(int position) {
            TabWidget widget = tabHost.getTabWidget();
            int oldFocusability = widget.getDescendantFocusability();
            widget.setDescendantFocusability(ViewGroup.FOCUS_BLOCK_DESCENDANTS);
            tabHost.setCurrentTab(position);
            widget.setDescendantFocusability(oldFocusability);
        }

        @Override
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

        }

        @Override
        public void onPageScrollStateChanged(int state) {

        }
    });
}

From source file:tv.piratemedia.lightcontroler.controller.java

private void setupApp() {

    mActionBarToolbar = (Toolbar) findViewById(R.id.toolbar_actionbar);
    setSupportActionBar(mActionBarToolbar);

    prefs = PreferenceManager.getDefaultSharedPreferences(this);

    if (!prefs.getBoolean("rgbw_enabled", false) && !prefs.getBoolean("white_enabled", false)) {
        askControlType();//from  w  w  w. jav  a2s. c  o  m
    } else {

        final ViewPager pager = (ViewPager) findViewById(R.id.pager);
        pager.setAdapter(new ControllerPager(getSupportFragmentManager(), this));

        tabs = (PagerSlidingTabStrip) findViewById(R.id.pager_title_strip);
        tabs.setViewPager(pager);

        if (!prefs.getBoolean("navigation_tabs", false)) {
            drawer.setProfile(new DrawerProfile().setAvatar(getResources().getDrawable(R.drawable.icon))
                    .setBackground(getResources().getDrawable(R.drawable.drawer_profile_background))
                    .setName("Light Controller"));

            mActionBarToolbar = (Toolbar) findViewById(R.id.toolbar_actionbar);
            mActionBarToolbar.setNavigationIcon(R.drawable.ic_menu_white_24dp);

            pager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
                @Override
                public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

                }

                @Override
                public void onPageSelected(int position) {
                    mActionBarToolbar.setTitle(pager.getAdapter().getPageTitle(position));
                }

                @Override
                public void onPageScrollStateChanged(int state) {

                }
            });
            this.setTitle(pager.getAdapter().getPageTitle(0));
            mActionBarToolbar.setTitle(pager.getAdapter().getPageTitle(0));
            tabs.setVisibility(View.GONE);

            for (int i = 0; i < pager.getAdapter().getCount(); i++) {
                if (i == 5) {
                    drawer.addDivider();
                }
                drawer.addItem(new DrawerItem().setTextMode(DrawerItem.SINGLE_LINE)
                        .setTextPrimary(pager.getAdapter().getPageTitle(i).toString())
                        .setOnItemClickListener(new DrawerItem.OnItemClickListener() {
                            @Override
                            public void onClick(DrawerItem drawerItem, int i, int i2) {
                                int item = i2;
                                if (item > 4) {
                                    item--;
                                }
                                pager.setCurrentItem(item, true);
                                drawer.closeDrawer();
                            }
                        }));
            }
            drawer.addDivider();
            drawer.addItem(new DrawerItem().setTextMode(DrawerItem.SINGLE_LINE)
                    .setTextPrimary(getResources().getString(R.string.action_settings))
                    .setOnItemClickListener(new DrawerItem.OnItemClickListener() {
                        @Override
                        public void onClick(DrawerItem drawerItem, int i, int i2) {
                            Intent intent = new Intent(getApplicationContext(), controlPreferences.class);
                            startActivity(intent);
                            finish();
                            drawer.closeDrawer();
                        }
                    }));

            final PackageManager pm = getPackageManager();
            Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
            mainIntent.addCategory("tv.piratemedia.lightcontroller.plugin");
            List<ResolveInfo> resolveInfos = pm.queryIntentActivities(mainIntent, 0);
            if (resolveInfos.size() > 0) {
                drawer.addDivider();
                for (final ResolveInfo info : resolveInfos) {
                    drawer.addItem(new DrawerItem().setTextMode(DrawerItem.SINGLE_LINE)
                            .setTextPrimary(info.loadLabel(pm).toString()).setImage(info.loadIcon(pm))
                            .setOnItemClickListener(new DrawerItem.OnItemClickListener() {
                                @Override
                                public void onClick(DrawerItem drawerItem, int i, int i2) {
                                    Intent intent = new Intent(Intent.ACTION_MAIN);
                                    Log.d("package", "pkg:" + info.resolvePackageName);
                                    intent.setComponent(new ComponentName(info.activityInfo.packageName,
                                            info.activityInfo.name));
                                    startActivity(intent);
                                    drawer.closeDrawer();
                                }
                            }));
                }
            }
        } else {
            drawer.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);
        }
    }
}

From source file:com.momock.binder.container.ViewPagerBinder.java

public void onBind(final ViewPager view, final IDataList<?> dataSource) {
    if (view != null) {
        if (refIndicator != null && refIndicator.get() != null) {
            refIndicator.get().setCount(dataSource.getItemCount());
        }//from  www  .  j  av  a  2 s. c o m
        view.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {

            @Override
            public void onPageSelected(int position) {
                position = adapter instanceof IRoundAdapter
                        ? ((IRoundAdapter) adapter).getRealPosition(position)
                        : position;
                Object item = dataSource.getItem(position);
                ItemEventArgs args = new ItemEventArgs(view, position, item);
                itemSelectedEvent.fireEvent(view, args);
                if (refIndicator != null && refIndicator.get() != null) {
                    refIndicator.get().setCurrentIndex(position);
                }
            }

            @Override
            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

            }

            @Override
            public void onPageScrollStateChanged(int state) {
                viewPagerState = state;
            }
        });
        view.setOnTouchListener(new View.OnTouchListener() {
            GestureDetector detector = null;

            @Override
            public boolean onTouch(View v, MotionEvent event) {
                view.getParent().requestDisallowInterceptTouchEvent(true);
                if (detector == null) {
                    detector = new GestureDetector(v.getContext(),
                            new GestureDetector.SimpleOnGestureListener() {

                                @Override
                                public boolean onSingleTapConfirmed(MotionEvent e) {
                                    Object item = dataSource.getItem(adapter instanceof IRoundAdapter
                                            ? ((IRoundAdapter) adapter).getRealPosition(view.getCurrentItem())
                                            : view.getCurrentItem());
                                    ItemEventArgs args = new ItemEventArgs(view, view.getCurrentItem(), item);
                                    itemClickedEvent.fireEvent(view, args);
                                    return true;
                                }

                            });
                }
                return detector.onTouchEvent(event);
            }
        });
        adapter = new PagerAdapter() {
            BlockingQueue<View> savedViews = new LinkedBlockingQueue<View>();

            @Override
            public int getCount() {
                return dataSource.getItemCount();
            }

            @Override
            public boolean isViewFromObject(View view, Object object) {
                return view == ((View) object);
            }

            @Override
            public Object instantiateItem(ViewGroup container, int position) {
                View convertView = null;
                if (savedViews.size() > 0) {
                    convertView = savedViews.poll();
                }
                Object item = dataSource.getItem(position);
                if (convertView != null)
                    convertView.setTag(null);
                convertView = itemBinder.onCreateItemView(convertView, item, ViewPagerBinder.this);
                convertView.setTag(item);
                container.addView(convertView, 0);
                return convertView;
            }

            @Override
            public void destroyItem(ViewGroup container, int position, Object object) {
                savedViews.add((View) object);
                container.removeView((View) object);
            }

            long lastDataSetChangedTick = 0;

            @Override
            public void notifyDataSetChanged() {
                lastDataSetChangedTick = System.nanoTime();
                getDataChangedEvent().fireEvent(this, new EventArgs());
                if (refIndicator != null && refIndicator.get() != null) {
                    refIndicator.get().setCount(dataSource.getItemCount());
                }
                super.notifyDataSetChanged();
                Logger.debug("ViewPagerBinder.PagerAdapter.notifyDataSetChanged");
            }

            long updateTick = 0;

            @Override
            public void startUpdate(ViewGroup container) {
                updateTick = System.nanoTime();
                super.startUpdate(container);
            }

            @Override
            public void setPrimaryItem(ViewGroup container, int position, Object object) {
                super.setPrimaryItem(container, position, object);
            }

            @Override
            public void finishUpdate(ViewGroup container) {
                super.finishUpdate(container);
                if (lastDataSetChangedTick < updateTick)
                    lastDataSetChangedTick = 0;
            }

            @Override
            public int getItemPosition(Object object) {
                return lastDataSetChangedTick == 0 ? PagerAdapter.POSITION_UNCHANGED
                        : PagerAdapter.POSITION_NONE;
            }
        };
        if (round)
            adapter = new RoundPagerAdapter(adapter);
        view.setAdapter(adapter);
        dataSource.addDataChangedHandler(new IEventHandler<DataChangedEventArgs>() {

            @Override
            public void process(Object sender, DataChangedEventArgs args) {
                adapter.notifyDataSetChanged();
            }

        });
        if (round)
            view.setCurrentItem(Math.max(100, dataSource.getItemCount() * 100), false);
    }
}