この行を使用して、現在のフラグメントを表示しています:
Item myFragment = (Item) getSupportFragmentManager().findFragmentById(R.id.pager);
これが私のViewPagerの例です
| A | B | C | D | E | F |
表示される最初のフラグメントはAですが、myFragmentはBです。Bに移動すると、myFragment = B ... Fに移動すると、myFragment = Eコードが表示されます:-> TabsActivity.java
誰かがすでにこの問題を抱えていますか?表示されるフラグメントとmyFragmentの値の間にシフトがあるのはなぜですか?
ありがとう
[編集]Log()を追加しましたこれが私のTabsActivityの一部です
class TabsAdapter extends FragmentStatePagerAdapter {
public TabsAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
Log.e("POSITION", position + "");
return Item.newInstance(CONTENT.get(position % CONTENT.size()));
}
@Override
public CharSequence getPageTitle(int position) {
return CONTENT.get(position % CONTENT.size());
}
@Override
public int getCount() {
return CONTENT.size();
}
}
そして、アプリケーションを起動すると、ロガーが表示されます:POSITION 0 POSITION 1
正常ですか?「POSITION0」だけを表示するのではないですか?そしてスライドすると「POSITION1」?