使用片段的 PagerAdapter
PagerAdapter using fragments
下面是一个 PagerAdapter 的例子。
是否可以获取片段并将它们添加到容器中,而不是在 instantiateItem 中编写所有逻辑?
提前致谢
@Override
public Object instantiateItem(ViewGroup container, int position) {
View view=null;
if(position%2==0){
view = activity.getLayoutInflater().inflate(R.layout.pager_item,container, false);
}else{
view = activity.getLayoutInflater().inflate(R.layout.pager_item,container, false);
}
// Add the newly created View to the ViewPager
container.addView(view);
// Retrieve a TextView from the inflated View, and update it's text
TextView title = (TextView) view.findViewById(R.id.item_title);
title.setText(tabs[position]);
// Return the View
return view;
}
使用 FragmentPagerAdapter
(对于将保留在内存中的少量页面)或 FragmentStatePagerAdapter
(对于如果离当前屏幕太远将保存的大量页面)。您只需要覆盖 getCount()
和 getItem(int position)
,它们应该 return 一个基于位置的新片段实例。
文档以及使用示例:
http://developer.android.com/reference/android/support/v4/app/FragmentPagerAdapter.html
http://developer.android.com/reference/android/support/v4/app/FragmentStatePagerAdapter.html
下面是一个 PagerAdapter 的例子。 是否可以获取片段并将它们添加到容器中,而不是在 instantiateItem 中编写所有逻辑?
提前致谢
@Override
public Object instantiateItem(ViewGroup container, int position) {
View view=null;
if(position%2==0){
view = activity.getLayoutInflater().inflate(R.layout.pager_item,container, false);
}else{
view = activity.getLayoutInflater().inflate(R.layout.pager_item,container, false);
}
// Add the newly created View to the ViewPager
container.addView(view);
// Retrieve a TextView from the inflated View, and update it's text
TextView title = (TextView) view.findViewById(R.id.item_title);
title.setText(tabs[position]);
// Return the View
return view;
}
使用 FragmentPagerAdapter
(对于将保留在内存中的少量页面)或 FragmentStatePagerAdapter
(对于如果离当前屏幕太远将保存的大量页面)。您只需要覆盖 getCount()
和 getItem(int position)
,它们应该 return 一个基于位置的新片段实例。
文档以及使用示例: http://developer.android.com/reference/android/support/v4/app/FragmentPagerAdapter.html http://developer.android.com/reference/android/support/v4/app/FragmentStatePagerAdapter.html