ViewPager工作正常,但我连接pagerTabStrip以显示页眉,我有以下问题。首次启动时,不显示标题。
我转动页面标题后显示。
可能是什么问题?下面取消上市。
<android.support.v4.view.ViewPager
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="56dp"
>
<android.support.v4.view.PagerTabStrip
android:id="@+id/pagerTabStrip"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="top">
</android.support.v4.view.PagerTabStrip>
</android.support.v4.view.ViewPager>
适配器ViewPager
**
public class ViewPagerAdapter extends FragmentPagerAdapter {
static final int PAGE_COUNT = 4;
ArrayList<String> PageTitle = new ArrayList<String >();
public ViewPagerAdapter(FragmentManager fm) {
super(fm);
PageTitle.add("Русские артисты");
PageTitle.add("Зарубежные артисты");
PageTitle.add("Поиск");
PageTitle.add("Добавить артиста");
}
@Override
public Fragment getItem(int position) {
return PageFragment.newInstance(position);
}
@Override
public int getCount() {
return PAGE_COUNT;
}
public CharSequence getPageTitle(int position) {
return PageTitle.get(position);
}
}
片段
public class PageFragment extends Fragment {
static final String ARGUMENT_PAGE_NUMBER = "arg_page_number";
int pageNumber;
int backColor;
public static PageFragment newInstance(int page) {
PageFragment pageFragment = new PageFragment();
Bundle arguments = new Bundle();
arguments.putInt(ARGUMENT_PAGE_NUMBER, page);
pageFragment.setArguments(arguments);
return pageFragment;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
pageNumber = getArguments().getInt(ARGUMENT_PAGE_NUMBER);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_page, null);
TextView tvPage = (TextView) view.findViewById(R.id.tvPage);
tvPage.setText("Page " + pageNumber);
return view;
}
}
MainActivity
pager = (ViewPager) findViewById(R.id.view_pager);
viewPagerAdapter = new ViewPagerAdapter(getSupportFragmentManager());
pager.setAdapter(viewPagerAdapter);
pager.setCurrentItem(2);
pager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
}
@Override
public void onPageScrollStateChanged(int state) {
}
});