ActionBar的TabListener与Fragment

本文详细介绍了如何在Android应用中自定义Tab栏,包括如何设置ActionBar,添加Tab,以及TabListener的实现。具体展示了如何通过TabListener来响应Tab的选中、重新选择和取消选择事件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package com.sevengroup.tablistener;

import android.app.ActionBar.Tab;
import android.app.ActionBar.TabListener;
import android.app.FragmentTransaction;
import android.content.Context;
import android.support.v4.app.Fragment;
import android.support.v4.view.ViewPager;

public class MyTabListener<T extends Fragment> implements TabListener {

    private ViewPager vp ;
    private Context context;
    private Class<T> mclass ;
    
    public MyTabListener(ViewPager vp ,Context context, Class<T> mclass) {
        super();
        this.vp = vp ;
        this.context = context;
        this.mclass = mclass;
    }

    @Override
    public void onTabReselected(Tab tab, FragmentTransaction ft) {
        // TODO Auto-generated method stub

    }

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

    @Override
    public void onTabUnselected(Tab tab, FragmentTransaction ft) {
        // TODO Auto-generated method stub

    }

}

~~~~~~~~~~~~~~~~~~~~~~~~~~~MainActivity中对actoinBar的代码实现~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

ActionBar actionBar = getActionBar();
        actionBar.setDisplayHomeAsUpEnabled(true);
        actionBar.setHomeAsUpIndicator(R.drawable.browse_back);
        actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
        actionBar.addTab(actionBar.newTab().setText("职位搜索").setTabListener(new MyTabListener<SearchFragment>(vp_main_viewpager,this,SearchFragment.class)));
        actionBar.addTab(actionBar.newTab().setText("我的智联").setTabListener(new MyTabListener<MyJobSearchFragment>(vp_main_viewpager,this,MyJobSearchFragment.class)));
        actionBar.addTab(actionBar.newTab().setText("我的简历").setTabListener(new MyTabListener<ResumeFragment>(vp_main_viewpager,this,ResumeFragment.class)));



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值