プロジェクトでライブラリ「ViewPagerIndicator」を使用しています。
xml に ViewPager と ViewPagerIndicator があります。
私の問題は、動作する正しいアダプターを作成できないことです。Jake Warton の例で使用されているアダプターと比較しましたが、正しく動作しません。ViewPager は正しく動作し、ViewPagerIndicator は画面に表示されますが、動きません。
たとえば、viewpagerindicator の 2 番目の項目でパルスがビューページャーを移動するが、viewpagerindicator を移動しない場合
これは主なアクティビティ コードです。
//...
pager = (ViewPager) findViewById(R.id.pager);
ViewPagerAdapter adapterViewPager = new ViewPagerAdapter(getSupportFragmentManager());
adapterViewPager.addFragment(new FRG_home());
adapterViewPager.addFragment(new Fragment_One());
adapterViewPager.addFragment(new Fragment_Two());
adapterViewPager.addFragment(new Fragment_Three());
pager.setOffscreenPageLimit(5);
pager.setAdapter(adapterViewPager);
PageIndicator mIndicator = (TitlePageIndicator)findViewById(R.id.indicator);
mIndicator.setViewPager(pager);
//...
これは、Jake Wharton の例で使用されているアダプター コードです。
class TestFragmentAdapter extends FragmentPagerAdapter implements IconPagerAdapter {
protected static final String[] CONTENT = new String[] { "This", "Is", "A", "Test", };
protected static final int[] ICONS = new int[] {
R.drawable.ic_launcher,
R.drawable.ic_launcher,
R.drawable.ic_launcher,
R.drawable.ic_launcher
};
private int mCount = CONTENT.length;
public TestFragmentAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
return TestFragment.newInstance(CONTENT[position % CONTENT.length]);
}
@Override
public int getCount() {
return mCount;
}
@Override
public CharSequence getPageTitle(int position) {
return TestFragmentAdapter.CONTENT[position % CONTENT.length];
}
public int getIconResId(int index) {
return ICONS[index % ICONS.length];
}
public void setCount(int count) {
if (count > 0 && count <= 10) {
mCount = count;
notifyDataSetChanged();
}
}
}
メイン アクティビティから ViewPager を追加したフラグメントを使用したい:
adapterViewPager.addFragment(new FRG_home());
adapterViewPager.addFragment(new Fragment_One());
adapterViewPager.addFragment(new Fragment_Two());
adapterViewPager.addFragment(new Fragment_Three());
そして、これは私のアダプターです:
public class ViewPagerAdapter extends FragmentPagerAdapter{
List<Fragment> fragments = null;
protected static final String[] CONTENT = new String[] { "This", "Is","a","Test", };
protected static final int[] ICONS = new int[] {
R.drawable.ic_launcher,
R.drawable.ic_launcher,
R.drawable.ic_launcher,
R.drawable.ic_launcher
};
private int mCount = CONTENT.length;
public ViewPagerAdapter(FragmentManager fm) {
super(fm);
fragments = new ArrayList<Fragment>();
}
public void addFragment(Fragment fragment){
fragments.add(fragment);
}
@Override
public Fragment getItem(int arg0) {
return fragments.get(arg0);
}
@Override
public int getCount() {
return fragments.size();
}
@Override
public CharSequence getPageTitle(int position) {
return ViewPagerAdapter.CONTENT[position % CONTENT.length];
}
}
ほぼ2日間試しましたが、ViewPagerIndicatorも移動する正しいアダプターを作成できません
助けてくれてありがとう、前もって感謝します
よろしく。