ViewPagerIndicatorとTitlePageIndicatorを使用してアプリのUIを作り直すことにしましたが、次の問題があります。
1)各ページのフラグメントは表示されません。
2)2ページ間のスワイプは機能しません。
タブと同じようにActionBarSherlockを使用しています。
タブを使用していたときに正常に動作し、次のコードを記述したため、Fragmensでは何も変更していません。
public class CustomFragmentAdapter extends FragmentPagerAdapter {
private final String[] TITLES = new String[] {
"General",
"Companies",
"Discounts"
};
public final int NUM_TITLES = TITLES.length;
public CustomFragmentAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
Log.v("POSITION", "position: "+position);
switch (position) {
case 0:
return new General();
case 1:
return new Companies();
case 2:
return new Discounts();
}
return null;
}
@Override
public int getCount() {
return NUM_TITLES;
}
@Override
public CharSequence getPageTitle(int position) {
return TITLES[position % NUM_TITLES].toUpperCase();
}
}
と
mViewPager = (ViewPager)findViewById(R.id.pager);
mViewPager.setAdapter(new CustomFragmentAdapter(getSupportFragmentManager()));
TitlePageIndicator indicator = (TitlePageIndicator) findViewById(R.id.indicator);
indicator.setViewPager(mViewPager);
indicator.setCurrentItem(0);
と私のXML
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<com.viewpagerindicator.TitlePageIndicator
android:id="@+id/indicator"
android:layout_height="wrap_content"
android:layout_width="match_parent"
/>
<android.support.v4.view.ViewPager
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
/>
私が見てきたように、ほとんどのチュートリアルと例は私のコードと同じように静かですが、それでもそれを機能させることはできません。私はほとんどすべてを試しました。また、TextViewだけでダミーフラグメントを配置したときにも機能しませんでした。また、ViewPagerIndicatorを削除してViewPagerのみを試してみましたが、うまくいきませんでした。
何かが足りないのかもしれませんが、見つかりません。よろしくお願いします。