:
public interface ReadyInterface {
public void ready();
}
があなたの破片でそのインターフェイスを実装します。
public class ViewPagerActivity implements ViewPager.OnPageChangeListener {
public void onCreate(Bundle savedInstanceState) {
...
if (savedInstanceState != null) {
//Restore the fragment's instance
mContent = getSupportFragmentManager().getFragment(savedInstanceState, "mContent");
...
}
...
}
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
//Save the fragment's instance
getSupportFragmentManager().putFragment(outState, "mContent", mContent);
}
// regular activity stuff plus view pager methods
@Override
public void onPageSelected(int arg0) {
final ReadyFragment fragment = mAdapter.getItem(arg0);
if (fragment.isVisible()) {
fragment.ready(); //method inside your custom fragment code
}
}
}
は、インターフェイスクラスを追加します。 onPageSelected()メソッドの何でもviewPagerを変更またはスワイプするたびに呼び出されます。
viewPager.addOnPageChangeListener(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) {
}
});
ページャアダプタの 'getItem'メソッドは、フラグメントの新しいインスタンスを作成しますか? –
それは何もしません – kerollos
何も意味しませんか?ビューまたはフラグメント(おそらくあなたの場合はフラグメント)を返す必要があります。 –