android – 使用actionbarsherlock的状态寻呼机获取当前片段位置

android – 使用actionbarsherlock的状态寻呼机获取当前片段位置,第1张

概述我有一个使用actionbarsherlock的工作状态分页器项目,但我在获取显示的当前片段时遇到问题.是否有可能获得当前片段的位置? 对的,这是可能的.如果您使用的是ViewPager,则可以这样做: _viewPager.getCurrentItem(); 或者那个 _pageListener = new PageListener();_viewPager.setOnPageChangeLi 我有一个使用actionbarsherlock的工作状态分页器项目,但我在获取显示的当前片段时遇到问题.是否有可能获得当前片段的位置?解决方法 对的,这是可能的.如果您使用的是VIEwPager,则可以这样做:

_vIEwPager.getCurrentItem();

或者那个

_Pagelistener = new Pagelistener();_vIEwPager.setonPagechangelistener(_Pagelistener);

并保持对@R_419_6137@的跟踪:

private int _currentPage;    private static class Pagelistener extends SimpleOnPagechangelistener{            public voID onPageSelected(int position) {                Log.i(TAG,"page selected " + position);                   _currentPage = position;        }    }

或者你可以使用像这样的TabAdapter轻松地做到这一点:

public static class TabsAdapter extends FragmentPagerAdapter implements Actionbar.TabListener,VIEwPager.OnPagechangelistener {        private final Context               mContext;        private final Actionbar             mActionbar;        private final VIEwPager             mVIEwPager;        private final ArrayList<TabInfo>    mTabs   = new ArrayList<TabInfo>();        static final class TabInfo {            private final Class<?>  clss;            private final Bundle    args;            TabInfo(Class<?> _class,Bundle _args) {                clss = _class;                args = _args;            }        }        public TabsAdapter(SherlockFragmentActivity activity,VIEwPager pager) {            super(activity.getSupportFragmentManager());            mContext = activity;            mActionbar = activity.getSupportActionbar();            mVIEwPager = pager;            mVIEwPager.setAdapter(this);            mVIEwPager.setonPagechangelistener(this);        }        public voID addTab(Actionbar.Tab tab,Class<?> clss,Bundle args) {            TabInfo info = new TabInfo(clss,args);            tab.setTag(info);            tab.setTabListener(this);            mTabs.add(info);            mActionbar.addTab(tab);            notifyDataSetChanged();        }        @OverrIDe        public int getCount() {            return mTabs.size();        }        @OverrIDe        public Fragment getItem(int position) {            TabInfo info = mTabs.get(position);            return Fragment.instantiate(mContext,info.clss.getname(),info.args);        }        public voID onPageScrolled(int position,float positionOffset,int positionOffsetPixels) {        }        public voID onPageSelected(int position) {            mActionbar.setSelectednavigationItem(position);            ((SherlockFragmentActivity) mContext).supportInvalIDateOptionsMenu();        }        public voID onPageScrollStateChanged(int state) {        }        public voID onTabSelected(Tab tab,FragmentTransaction ft) {            Object tag = tab.getTag();            for (int i = 0; i < mTabs.size(); i++) {                if (mTabs.get(i) == tag) {                    mVIEwPager.setCurrentItem(i);                }            }        }        public voID onTabUnselected(Tab tab,FragmentTransaction ft) {        }        public voID onTabReselected(Tab tab,FragmentTransaction ft) {        }    }

您只需要使用一种或两种方法保留@R_419_6137@.例如在onTabSelected中

希望它能帮助你祝好运

总结

以上是内存溢出为你收集整理的android – 使用actionbarsherlock的状态寻呼机获取当前片段位置全部内容,希望文章能够帮你解决android – 使用actionbarsherlock的状态寻呼机获取当前片段位置所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1127307.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存