使用ViewPager实现顶部tabbar切换界面
来源:互联网 发布:个人域名申请 编辑:程序博客网 时间:2024/05/23 01:31
类似的功能可以看看:
使用RadioGroup实现底部导航栏 - An_nA的博客 - CSDN博客 http://blog.csdn.net/an_nal/article/details/77005440
进入正题
效果图:
注: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的写法和这个类似
阅读全文
0 0
- 使用ViewPager实现顶部tabbar切换界面
- 使用viewpager实现QQ界面切换效果
- 使用ViewPager实现几个界面的切换,类似QQ
- Android Studio使用ViewPager+Fragment实现仿微信滑动切换界面
- 使用TabLayout、ViewPager和Fragment实现顶部菜单可滑动切换
- 使用TabLayout、ViewPager和Fragment实现顶部菜单可滑动切换
- 使用TabLayout、ViewPager和Fragment实现顶部菜单可滑动切换
- 使用TabLayout、ViewPager和Fragment实现顶部菜单可滑动切换
- 使用Viewpager 和 Fragment实现顶部导航
- Android viewpager 界面切换动画实现
- ViewPager、PagerTabStrip、FragmentPagerStateAdapter实现状态栏切换界面
- ViewPager与Fragment联动实现界面切换‘’
- ViewPager、Fragment、RadioButton实现顶部切换Tab页面
- 使用viewpager加fragment切换界面
- Android ViewPager和Fragment实现顶部导航界面滑动效果
- Android ViewPager和Fragment实现顶部导航界面滑动效果
- Android ViewPager和Fragment实现顶部导航界面滑动效果
- 【Android】viewpager+fragment实现界面滑动,顶部导航也滑动
- HDU
- NIO学习之Selector,SelectionKey与客户端与服务端通信简单实现(1)
- mongoose
- Hdu 1231 最大连续子序列
- Android 根据Uri删除文件
- 使用ViewPager实现顶部tabbar切换界面
- 中电投-镇宁3号集合资产管理计划
- Android之bitmap的使用
- 一、storm基础概念
- 节点操作
- HDU 2426 Interesting Housing Problem(EK模板)
- Bootstrap学习笔记——Bootstrap的基本介绍
- webmagic 爬取示例,新手学习
- 前端面试准备(1)