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>

猜你喜欢

转载自zhengaihua.iteye.com/blog/2330124