ViewPagerでアクティビティがあり、たくさんの写真が表示されます。起動時に、ViewPagerの位置は、前のアクティビティでユーザが選択した内容に基づいて設定されます。ギャラリーに似ています。setCurrentItem(0)を呼び出すときにonPageSelectedがトリガされない
新しいページが選択されるたびに、つまりアクティビティが最初に開かれたとき、またはユーザーが新しいページにスライドするときに、onPageSelectedを呼び出す必要があります。
私のような出発点を設定するので:
mPager.setCurrentItem(index);
すべてがこのように0に設定されたインデックスと呼ばれるsetCurrentItemがonPageSelectedをトリガしないときを除き、動作します。
mPager.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int index) {
Log.d(TAG, "onPageSelected " + index);
}
...
}
私の質問は次のとおりです。これはバグですか、もしそうなら、私はそれについて何ができますか?
runnableを投稿するだけの秘密のソースです。私は、onPageSelected呼び出しをトリガする前にviewPagerのビューが既にインスタンス化されていることを確認する必要がありました。ニース! – RobP
パーフェクト。最後に私はこの回答を見つけた – flosk8
間違いなく正しい答え – Juvi