android 获得最后一个选中的 action bar tab

文章标签: android
2015-1-9 9:26:23     人阅读    


如何获得最后一次点击的 Action Bar Tab ? 我试验过如下代码,没有成功

actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

        adapter = new FragmentPagerAdapter(getSupportFragmentManager(),
                title);

        viewPager = (ViewPager) findViewById(R.id.pager);
        viewPager.setAdapter(adapter);
        viewPager
 
                .setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {

                    /* (non-Javadoc)
 
                     * @see android.support.v4.view.ViewPager.SimpleOnPageChangeListener#onPageSelected(int)
 
                     */
                    @Override
                    public void onPageSelected(int position) {
                        // TODO Auto-generated method stub
                        actionBar.setSelectedNavigationItem(position);
                    }

                });

        for (int i = 0; i < adapter.getCount(); i++) {



            ActionBar.Tab tab = actionBar.newTab();

            tab.setText(adapter.getPageTitle(i));
            tab.setTabListener(this);
            actionBar.addTab(tab);

        }

    }

    @Override
    public void onTabSelected(Tab tab, FragmentTransaction ft) {
        // TODO Auto-generated method stub
        viewPager.setCurrentItem(tab.getPosition());

        // here How Can I get previous selected tab from which I am navigating

        }


在 onTabSelected() 方法中,我怎么样才能知道用户是从哪个tab跳入到当前tab中的

代码或者思路都可以,谢谢

处理方法

你可以创建一个全局变量

int fLastTab = -1;

然后你需要在  onTabSelected  方法中修改这个变量
如下:

public void onTabSelected(Tab tab, FragmentTransaction ft) {
    viewPager.setCurrentItem(tab.getPosition());

    //   在这里你可以检测  fLastTab 的值
    //  如果有其他值,你就可以根据具体的值来获得过来的tab
    // 在函数的最后 更新  fLastTab 的值

    fLastTab = tab.getPosition();

}

另一个方法你而已重写 onTabUnselected 方法,如下

public void onTabUnselected(Tab tab, FragmentTransaction ft){

    // .  在这里做一些事情,比如记录一下位置

}


 


原文地址:http://www.itmmd.com/201501/463.html
该文章由 萌萌的IT人 整理发布,转载须标明出处。

android学习笔记(40)Notification的功能与用法   上一篇
下一篇  android LIstVIew 点击 item报错ClassCastException
精彩回复
我要追加问题,请求站长解决!
姓名:       

《程序员app》专门为程序员量身定做!