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>
相关推荐
在Android开发中,ViewPager和Fragment是两个非常重要的组件,它们能帮助我们构建出动态、交互性强的用户界面。ViewPager主要用于实现页面滑动效果,而Fragment则可以看作是Activity的一个模块化部分,允许我们在一...
【ViewPager+Fragment_Demo】是一个基于Android开发的项目示例,它展示了如何使用ViewPager和Fragment来构建一个功能完善的Tab导航栏。在Android应用设计中,Tab导航是一种常见的用户界面模式,用于展示多个相关的...
在Android应用开发中,"仿微信5.2界面(ActionBar+ViewPager+Fragment)"是一个常见的设计模式,用于构建类似微信的多页面、可滑动切换的用户界面。这个标题所涉及的知识点主要涵盖三个方面:ActionBar、ViewPager和...
Android ViewPager+Fragment超高仿微信主界面(带底部图标切换动画)Android ViewPager+Fragment超高仿微信主界面(带底部图标切换动画)Android ViewPager+Fragment超高仿微信主界面(带底部图标切换动画)
在Android开发中,`ViewPager`和`Fragment`的结合使用是一种常见的实现页面滑动和内容切换的方式。`ViewPager`提供了一个优雅的用户界面组件,允许用户通过左右滑动来浏览多个`Fragment`,每个`Fragment`代表一个...
在Android应用开发中,"BottomBar+ViewPager+Fragment"是一种常见的设计模式,用于构建具有底部导航栏的应用界面。这种设计可以提供多个主视图之间的平滑切换,为用户带来便捷的交互体验。以下是对这个主题的详细...
懒加载简介:使用viewpager+fragment作为应用大的布局时,viewpager会通过setOffscreenPageLimit来设置预加载的项目, 不设置setOffscreenPageLimit,则默认为1(设置0无效,可以查看该方法源码知道),也就是当我们...
在Android应用开发中,"TableLayout+ViewPager+Fragment滑动标题栏索引"是一个常见的设计模式,用于构建具有高效交互性的UI。这个标题所指的是一种实现方式,它结合了三个核心组件:TableLayout、ViewPager和...
**ViewPager + Fragment Demo程序** ViewPager是Android开发中用于在多个页面间进行滑动切换的组件,常见于应用的引导页、设置页等场景。它允许用户通过左右滑动来查看和交互不同的页面,极大地提升了用户体验。...
在Android应用开发中,"ViewPager+Fragment实现仿QQ选项卡"是一种常见的设计模式,用于创建一个界面,其中用户可以通过滑动在多个视图之间切换,每个视图通常代表不同的功能或内容区域。这个设计灵感来源于QQ应用的...
总结来说,实现"viewpager+fragment+fragment间通讯"涉及到`ViewPager`的使用、`Fragment`之间的数据传递以及`Activity`与`Fragment`之间的通信。这些技术都是Android开发中的重要组成部分,熟练掌握它们能帮助...
在Android开发中,`ViewPager`和`Fragment`是两种常用组件,它们经常结合使用来创建具有滑动页面效果的应用界面。`ViewPager`是Android SDK中的一个控件,它允许用户左右滑动页面来查看多个视图,而`Fragment`则是...
在Android应用开发中,`ViewPager`、`Fragment`以及`NavigationTabbar`是构建动态、交互丰富的用户界面的常用组件。这些组件的结合使用能够帮助开发者实现类似滑动标签页的功能,提供良好的用户体验。让我们深入了解...
Viewpager+Fragment优化实例化布局(避免重复调用)
滑动切换页面 ViewPager+Fragment(解决切换Fragment状态不保存、各个Fragment之间的通信。 【FragmentViewPagerAdapter里的onPageSelected】)
在Android开发中,`ViewPager`和`Fragment`的结合使用是一种常见的实现屏幕间左右滑动切换的机制。这种设计模式可以提供高效的用户体验,使得用户在多个内容之间进行平滑的过渡,常见于应用的引导页、TabLayout或者...
此TabActivity是使用ViewPager+Fragment+RadioGroup实现TabHost选项卡,很少占用内存,不像TabHost会占用很多内存,有时候还会出现内存溢出,本人经历过此情况,因此写了此方法实现选项卡功能。
使用ViewPager+Fragment+RadioGroup实现类似微信主界面
在Android开发中,`ViewPager`和`Fragment`的结合使用是一种常见的实现页面滑动切换的手段,尤其适用于展示多个相似内容的场景,如轮播图、应用的引导页等。`ViewPager`允许用户左右滑动来浏览不同的`Fragment`,而`...
跟普通的Viewpager+Fragment一样,只不过是在AndroidStudio上面跑的