android 仿微信底部,Android仿微信底部选项卡

该博客主要展示了Android中仿微信底部Tab的实现代码。通过ViewPager和AlphaTabsIndicator等组件,实现了底部Tab的切换、角标显示等功能,还设置了点击监听和页面切换监听,以更新标题栏信息。

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

importandroid.support.v4.view.ViewPager;importandroid.view.View;importcom.loaderman.samplecollect.R;importcom.loaderman.samplecollect.activity.BaseActivity;importcom.loaderman.samplecollect.adapter.MyPagerAdapter;importcom.loaderman.samplecollect.constants.FragmentNameTagConstants;importcom.yinglan.alphatabs.AlphaTabView;importcom.yinglan.alphatabs.AlphaTabsIndicator;importcom.yinglan.alphatabs.OnTabChangedListner;public class FragmentViewPagerActivity extends BaseActivity implementsView.OnClickListener {privateViewPager vpHome;privateAlphaTabView mAlphaTabView;

@Overridepublic intgetLayout() {returnR.layout.activity_fragment_view_pager2;

}

@Overridepublic voidinitView() {

ivLeft.setVisibility(View.GONE);

vpHome=(ViewPager) findViewById(R.id.vp_home);

AlphaTabsIndicator mAlphaTabsIndicator=findViewById(R.id.alphaIndicator);

mAlphaTabView=findViewById(R.id.alphaTabView);

vpHome.setOffscreenPageLimit(5);

MyPagerAdapter homeAdapter= newMyPagerAdapter(getSupportFragmentManager());

vpHome.setAdapter(homeAdapter);

mAlphaTabsIndicator.setViewPager(vpHome);//mAlphaTabView.showNumber(55);//显示数字角标

mAlphaTabView.showPoint(); //显示小红点//mAlphaTabView.removeShow();//移除当前角标

mAlphaTabsIndicator.setOnTabChangedListner(newOnTabChangedListner() {

@Overridepublic void onTabSelected(inttabNum) {

updateTitleBar(tabNum);

}

});//设置底部tab点击监听

mAlphaTabsIndicator.setTabCurrenItem(0); //设置tab选项

updateTitleBar(FragmentNameTagConstants.HOME_0_TAG);//mAlphaTabsIndicator.removeAllBadge();//移除所有tab的角标

}private void updateTitleBar(intposition) {switch(position) {caseFragmentNameTagConstants.HOME_0_TAG:

tvCenter.setText(getResources().getString(R.string.home_0));

mAlphaTabView.showNumber(555); //显示数字角标

break;caseFragmentNameTagConstants.HOME_1_TAG:

tvCenter.setText(getResources().getString(R.string.home_1));break;caseFragmentNameTagConstants.HOME_2_TAG:

tvCenter.setText(getResources().getString(R.string.home_2));break;

}

}

@Overridepublic voidinitData() {

}

@Overridepublic voidinitListener() {

vpHome.addOnPageChangeListener(newViewPager.OnPageChangeListener() {

@Overridepublic void onPageScrolled(int position, float positionOffset, intpositionOffsetPixels) {

}

@Overridepublic void onPageSelected(intposition) {

updateTitleBar(position);

}

@Overridepublic void onPageScrollStateChanged(intstate) {

}

});

}

@Overridepublic voidinitNetConnectionOkData() {

}

@Overridepublic voidinitNetConnectionErrData() {

}

@Overridepublic voidonClick(View view) {int position =(Integer) view.getTag();//点击底部某一项的时候将ViewPager切换到那个界面vpHome.setCurrentItem(position,false);

updateTitleBar(position);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值