これで、Android で画面をページングViewPager
することができました。ViewPagerIndicator
1000をオーバーライドgetCount()
しFragmentStatePagerAdapter
て 1000 を返し、1000 ページにします。カレンダー (dd/MM/yyyy) に基づくページ タイトルを取得するには、いくつかのコードを実行する必要があります。スクロールするたびに、1000 ページのタイトルがすべて再構築されていることがわかります (ログを Adapter#getPageTitle(int) に出力します)。
これにより、ページャーのスクロールが非常に遅くなり、スムーズではなくなります。
1 ページをスクロールするときに ViewPagerIndicator がすべてのページ タイトルを再構築するべきではないと思います。
更新: アダプターのソース コードを追加します。
public class ResultAdapter extends FragmentStatePagerAdapter {
public ResultAdapter(FragmentManager fm) {
super(fm);
}
@Override
public int getCount() {
return 1000;
}
@Override
public Fragment getItem(int position) {
Log.d("xskt", "Adapter.GetItem.position=" + position);
Calendar calendar = Utilities.selectedProvince.getLastDay(Utilities.selectedCalendar, Utilities.pagerSize - position - 1);
ResultView resultView = new ResultView(Utilities.selectedProvince, calendar);
resultView.setTitle(calendar.get(Calendar.DAY_OF_MONTH) + "/" + (calendar.get(Calendar.MONTH) + 1));
return resultView;
}
@Override
public CharSequence getPageTitle(int position) {
// Calendar calendar;
//DO SOME CALCULATE WITH CALENDAR
// String title = calendar.get(Calendar.DAY_OF_MONTH) + "/" + (calendar.get(Calendar.MONTH) + 1);
// return title;
Log.d("xskt","get page title");
return ((ResultView) getItem(position)).getTitle();
}
}