Android使用ViewPager实现顶部tabbar切换界面
发布时间 - 2026-01-11 03:01:25 点击率:次Android使用ViewPager实现顶部tabbar切换界面,类似的功能可以看看:

使用RadioGroup实现底部导航栏
进入正题
效果图:
注:PagerSlidingTabStrip为自定义控件,用于切换界面,此处不便贴出代码
1.主界面xml布局中添加ViewPager控件:
<android.support.v4.view.ViewPager android:id="@+id/pager_view" android:layout_width="match_parent" android:layout_height="match_parent" />
2.主界面的activity代码:
FrOrderList和FrFoodList分别为内部的fragment页面
String[] tabs = {"坚果", "肉脯", "果冻"};
private MyPagerAdpater adpater;
//为ViewPager添加Adpater
adpater = new MyPagerAdpater(getSupportFragmentManager());
pagerView.setOffscreenPageLimit(4);
pagerView.setAdapter(adpater);
class MyPagerAdpater extends FragmentPagerAdapter {
public MyPagerAdpater(FragmentManager manager) {
super(manager);
}
@Override
public Fragment getItem(int position) {
switch (position){
case 0:
return FrOrderList.newInstance( 0);
case 1:
return FrFoodList.newInstance( 1);
case 2:
return FrOrderList.newInstance( 2);
}
return null;
}
@Override
public CharSequence getPageTitle(int position) {
return tabs[position];
}
@Override
public int getCount() {
return tabs.length;
}
}
3.内部fragment页面:
其布局只是为了纯显示,所以只添加了一个textview
<TextView android:id="@+id/tv_content" android:gravity="center" android:layout_width="match_parent" android:layout_height="match_parent" android:textSize="32sp" android:textColor="#63B8FF" android:text="999"/>
activity代码:
整个流程为:
public static FrFoodList newInstance(int mState)
–》public void onCreate(@Nullable Bundle savedInstanceState)
–》public View onCreateView
–》public void initView()
public class FrFoodList extends Fragment {
TextView tvContent;
private static String DATAKEY = "STATE";
private int mState = 0;
public static FrFoodList newInstance(int mState) {
FrFoodList frFoodList = new FrFoodList();
Bundle bundle = new Bundle();
bundle.putInt( DATAKEY, mState);
frFoodList.setArguments(bundle);
return frFoodList;
}
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mState = getArguments().getInt( DATAKEY);
}
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_food_list, null);
tvContent = (TextView) view.findViewById(R.id.tv_content);
initView();
return view;
}
public void initView(){
switch ( mState ){
case 0:
tvContent.setText( "一大波坚果即将来袭~~~" );
break;
case 1:
tvContent.setText( "好吃又香,美味抵挡不住(^_^)" );
break;
case 2:
tvContent.setText( "浪漫气息,粉嫩可爱(*_*)" );
break;
}
}
}
FrOrderList的写法和这个类似。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# ViewPager
# tabbar
# 切换
# Android实现界面左右滑动切换功能
# Android输入法与表情面板切换时的界面抖动问题解决方法
# Android实现闪屏及注册和登录界面之间的切换效果
# PagerSlidingTabStrip制作Android带标签的多界面滑动切换
# Android App仿微信界面切换时Tab图标变色效果的制作方法
# Android应用中使用ViewPager实现类似QQ的界面切换效果
# android编程实现局部界面动态切换的方法
# Android界面切换出现短暂黑屏的解决方法
# Android实现Activity界面切换添加动画特效的方法
# Android studio实现两个界面间的切换
# 大波
# 自定义
# 分别为
# 贴出
# 大家多多
# 来袭
# private
# tabs
# adpater
# MyPagerAdpater
# gt
# FrFoodList
# FrOrderList
# activity
# String
# fragment
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】
高性能网站服务器配置指南:安全稳定与高效建站核心方案
独立制作一个网站多少钱,建立网站需要花多少钱?
Laravel Eloquent模型如何创建_Laravel ORM基础之Model创建与使用教程
Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】
网页设计与网站制作内容,怎样注册网站?
最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?
Laravel如何构建RESTful API_Laravel标准化API接口开发指南
详解Android图表 MPAndroidChart折线图
Laravel如何使用Eloquent ORM进行数据库操作?(CRUD示例)
手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?
图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?
详解Oracle修改字段类型方法总结
Laravel如何处理CORS跨域问题_Laravel项目CORS配置与解决方案
高防服务器如何保障网站安全无虞?
手机怎么制作网站教程步骤,手机怎么做自己的网页链接?
Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制
如何在阿里云域名上完成建站全流程?
详解jQuery停止动画——stop()方法的使用
如何在万网主机上快速搭建网站?
如何用IIS7快速搭建并优化网站站点?
如何在云主机上快速搭建网站?
laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法
Thinkphp 中 distinct 的用法解析
长沙做网站要多少钱,长沙国安网络怎么样?
浅谈javascript alert和confirm的美化
如何登录建站主机?访问步骤全解析
惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?
Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优
Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置
EditPlus 正则表达式 实战(3)
WordPress 子目录安装中正确处理脚本路径的完整指南
Laravel如何实现邮箱地址验证功能_Laravel邮件验证流程与配置
浅谈Javascript中的Label语句
Laravel如何生成URL和重定向?(路由助手函数)
Python自然语言搜索引擎项目教程_倒排索引查询优化案例
Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】
JS碰撞运动实现方法详解
如何确认建站备案号应放置的具体位置?
Laravel Seeder填充数据教程_Laravel模型工厂Factory使用
在Oracle关闭情况下如何修改spfile的参数
Laravel怎么实现搜索高亮功能_Laravel结合Scout与Algolia全文检索【实战】
如何正确下载安装西数主机建站助手?
怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?
高性能网站服务器部署指南:稳定运行与安全配置优化方案
Laravel观察者模式如何使用_Laravel Model Observer配置
香港服务器建站指南:免备案优势与SEO优化技巧全解析
简历在线制作网站免费版,如何创建个人简历?
如何在阿里云通过域名搭建网站?
如何快速上传建站程序避免常见错误?

