public class MainActivity extends FragmentActivity { /** * Tab标题 */ private static final String[] TITLE = new String[] { "头条", "房产", "另一面", "女人", "财经", "数码", "情感", "科技" }; /** * 装fragment的集合 */ private List<MyFragment> list; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //隐藏标题栏 requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); TabPageIndicator tabPageIndicator = (TabPageIndicator) findViewById(R.id.tabPageIndicator); ViewPager viewPager = (ViewPager) findViewById(R.id.viewPager); // 准备fragment addFragment(); viewPager.setAdapter(new MyFragmentPagerAdapter( getSupportFragmentManager(), list,TITLE)); // 把viewPager设置给指示器 tabPageIndicator.setViewPager(viewPager); } private void addFragment() { list = new ArrayList<MyFragment>(); for (int i = 0; i < TITLE.length; i++) { MyFragment myFragment = new MyFragment(); Bundle bundle = new Bundle(); bundle.putString("path", TITLE[i] + "的接口地址"); myFragment.setArguments(bundle); list.add(myFragment); }} }
public class MyFragment extends Fragment { private View view; @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { view = View.inflate(getActivity(), R.layout.fragment, null); return view; } @Override public void onActivityCreated(@Nullable Bundle savedInstanceState) { Bundle bundle = getArguments(); String path = bundle.getString("path"); TextView textView = (TextView) view.findViewById(R.id.textView); textView.setText(path); super.onActivityCreated(savedInstanceState); } }
public class MyFragmentPagerAdapter extends FragmentPagerAdapter { private List<MyFragment> list; private String[] title; public MyFragmentPagerAdapter(FragmentManager fm, List<MyFragment> list, String[] title) { super(fm); this.list = list; this.title = title; } @Override public Fragment getItem(int arg0) { return list.get(arg0); } @Override public int getCount() { return list.size(); } @Override public CharSequence getPageTitle(int position) { return title[position]; } }
activiyt_main <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" > <com.viewpagerindicator.TabPageIndicator android:id="@+id/tabPageIndicator" android:layout_width="fill_parent" android:layout_height="wrap_content" > </com.viewpagerindicator.TabPageIndicator> <android.support.v4.view.ViewPager android:id="@+id/viewPager" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_below="@id/tabPageIndicator" > </android.support.v4.view.ViewPager> </RelativeLayout>
fragment----------- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout>
相关推荐
网易新闻首页效果(ViewPager+Fragment+ListView)
TabLayout+ViewPager+Fragment实现分页滑动效果Demo
ViewPager+Fragment基本使用,设计出更加灵活的界面风格
Android ViewPager+Fragment超高仿微信主界面(带底部图标切换动画)Android ViewPager+Fragment超高仿微信主界面(带底部图标切换动画)Android ViewPager+Fragment超高仿微信主界面(带底部图标切换动画)
懒加载简介:使用viewpager+fragment作为应用大的布局时,viewpager会通过setOffscreenPageLimit来设置预加载的项目, 不设置setOffscreenPageLimit,则默认为1(设置0无效,可以查看该方法源码知道),也就是当我们...
ViewPager+Fragment,NavigationTabbar,NavigationTabbar+Fragment
实现viewpager+fragment无限滑动,并且可以从activity传值给fragment从而实现对fragment的控制.
ViewPager + fragment + RecyclerView
viewpager+fragment实现滑动导航的功能。简单实现了fragment间的传值,activity与fragment间的通讯。
ViewPager+Fragment组成写成Tab导航栏
很简单的实现viewpager+fragment左右滑动效果,类似商城app框架。
Viewpager+Fragment优化实例化布局(避免重复调用)
滑动切换页面 ViewPager+Fragment(解决切换Fragment状态不保存、各个Fragment之间的通信。 【FragmentViewPagerAdapter里的onPageSelected】)
ViewPager+Fragment实现无限加载
ViewPager + Fragment小Demo
ViewPager+Fragment+DrawableLayout + NavigationView实现页面水平滑动与侧滑抽屉布局
此TabActivity是使用ViewPager+Fragment+RadioGroup实现TabHost选项卡,很少占用内存,不像TabHost会占用很多内存,有时候还会出现内存溢出,本人经历过此情况,因此写了此方法实现选项卡功能。
使用ViewPager+Fragment+RadioGroup实现类似微信主界面
跟普通的Viewpager+Fragment一样,只不过是在AndroidStudio上面跑的
定义底部导航栏最最简单的方式BottomNavigationView+ViewPager+Fragment