`
zhengaihua
  • 浏览: 21120 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

ViewPager+Fragment

阅读更多

 

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基本使用

    在Android开发中,ViewPager和Fragment是两个非常重要的组件,它们能帮助我们构建出动态、交互性强的用户界面。ViewPager主要用于实现页面滑动效果,而Fragment则可以看作是Activity的一个模块化部分,允许我们在一...

    ViewPager+Fragment_Demo

    【ViewPager+Fragment_Demo】是一个基于Android开发的项目示例,它展示了如何使用ViewPager和Fragment来构建一个功能完善的Tab导航栏。在Android应用设计中,Tab导航是一种常见的用户界面模式,用于展示多个相关的...

    仿微信5.2界面(ActionBar+ViewPager+Fragment)

    在Android应用开发中,"仿微信5.2界面(ActionBar+ViewPager+Fragment)"是一个常见的设计模式,用于构建类似微信的多页面、可滑动切换的用户界面。这个标题所涉及的知识点主要涵盖三个方面:ActionBar、ViewPager和...

    Android ViewPager+Fragment超高仿微信主界面(带底部图标切换动画)

    Android ViewPager+Fragment超高仿微信主界面(带底部图标切换动画)Android ViewPager+Fragment超高仿微信主界面(带底部图标切换动画)Android ViewPager+Fragment超高仿微信主界面(带底部图标切换动画)

    viewpager+fragment无限滑动+传值给fragment

    在Android开发中,`ViewPager`和`Fragment`的结合使用是一种常见的实现页面滑动和内容切换的方式。`ViewPager`提供了一个优雅的用户界面组件,允许用户通过左右滑动来浏览多个`Fragment`,每个`Fragment`代表一个...

    BottomBar+ViewPager+Fragment

    在Android应用开发中,"BottomBar+ViewPager+Fragment"是一种常见的设计模式,用于构建具有底部导航栏的应用界面。这种设计可以提供多个主视图之间的平滑切换,为用户带来便捷的交互体验。以下是对这个主题的详细...

    ViewPager+fragment的一个demo,顶部有导航栏,实现懒加载

    懒加载简介:使用viewpager+fragment作为应用大的布局时,viewpager会通过setOffscreenPageLimit来设置预加载的项目, 不设置setOffscreenPageLimit,则默认为1(设置0无效,可以查看该方法源码知道),也就是当我们...

    TableLayout+ViewPager+Fragment滑动标题栏索引

    在Android应用开发中,"TableLayout+ViewPager+Fragment滑动标题栏索引"是一个常见的设计模式,用于构建具有高效交互性的UI。这个标题所指的是一种实现方式,它结合了三个核心组件:TableLayout、ViewPager和...

    ViewPager + Fragment Demo程序

    **ViewPager + Fragment Demo程序** ViewPager是Android开发中用于在多个页面间进行滑动切换的组件,常见于应用的引导页、设置页等场景。它允许用户通过左右滑动来查看和交互不同的页面,极大地提升了用户体验。...

    viewpager+fragment实现仿QQ选项卡

    在Android应用开发中,"ViewPager+Fragment实现仿QQ选项卡"是一种常见的设计模式,用于创建一个界面,其中用户可以通过滑动在多个视图之间切换,每个视图通常代表不同的功能或内容区域。这个设计灵感来源于QQ应用的...

    viewpager+fragment+fragment间通讯

    总结来说,实现"viewpager+fragment+fragment间通讯"涉及到`ViewPager`的使用、`Fragment`之间的数据传递以及`Activity`与`Fragment`之间的通信。这些技术都是Android开发中的重要组成部分,熟练掌握它们能帮助...

    ViewPager + Fragment小Demo

    在Android开发中,`ViewPager`和`Fragment`是两种常用组件,它们经常结合使用来创建具有滑动页面效果的应用界面。`ViewPager`是Android SDK中的一个控件,它允许用户左右滑动页面来查看多个视图,而`Fragment`则是...

    ViewPager+Fragment,NavigationTabbar,NavigationTabbar+Fragment

    在Android应用开发中,`ViewPager`、`Fragment`以及`NavigationTabbar`是构建动态、交互丰富的用户界面的常用组件。这些组件的结合使用能够帮助开发者实现类似滑动标签页的功能,提供良好的用户体验。让我们深入了解...

    Viewpager+Fragment优化

    Viewpager+Fragment优化实例化布局(避免重复调用)

    滑动切换页面 ViewPager+Fragment

    滑动切换页面 ViewPager+Fragment(解决切换Fragment状态不保存、各个Fragment之间的通信。 【FragmentViewPagerAdapter里的onPageSelected】)

    Android实现ViewPager+Fragment左右滑动

    在Android开发中,`ViewPager`和`Fragment`的结合使用是一种常见的实现屏幕间左右滑动切换的机制。这种设计模式可以提供高效的用户体验,使得用户在多个内容之间进行平滑的过渡,常见于应用的引导页、TabLayout或者...

    ViewPager+Fragment+RadioGroup

    此TabActivity是使用ViewPager+Fragment+RadioGroup实现TabHost选项卡,很少占用内存,不像TabHost会占用很多内存,有时候还会出现内存溢出,本人经历过此情况,因此写了此方法实现选项卡功能。

    使用ViewPager+Fragment+RadioGroup实现类似微信主界面

    使用ViewPager+Fragment+RadioGroup实现类似微信主界面

    viewpager+fragment循环滑动

    在Android开发中,`ViewPager`和`Fragment`的结合使用是一种常见的实现页面滑动切换的手段,尤其适用于展示多个相似内容的场景,如轮播图、应用的引导页等。`ViewPager`允许用户左右滑动来浏览不同的`Fragment`,而`...

    Android Studio版本的ViewPager+Fragment

    跟普通的Viewpager+Fragment一样,只不过是在AndroidStudio上面跑的

Global site tag (gtag.js) - Google Analytics