2 つの文字列配列を受け取るクラスがあります。これらの配列には、各ファイルのファイル名とタイトルが含まれています。ViewPager を設定していますが、これらの配列はアプリのセクションによって変わる可能性があるため、switch ステートメントを使用できません。ViewPager には、アセット フォルダー内のファイルからデータを収集するフラグメントが表示されます。
シナリオ A:
- fileString[] の長さは 4 です
fileTitleString[] の長さは 4 です
@Override public Fragment getItem(int position) { Fragment fragment = new myFragment(FILE_PATH, fileString[SELECTION]); switch (position) { case 0: fragment = new myFragment(FILE_PATH, fileString[0]); break; case 1: fragment = new myFragment(FILE_PATH, fileString[1]); break; case 2: fragment = new myFragment(FILE_PATH, fileString[2]); break; case 3: fragment = new myFragment(FILE_PATH, fileString[3]); break; } return fragment; } @Override public CharSequence getPageTitle(int position) { String title = ""; switch (position) { case 0: title = " " + fileTitleString[0] + " "; break; case 1: title = " " + fileTitleString[1] + " "; break; case 2: title = " " + fileTitleString[2] + " "; break; case 3: title = " " + fileTitleString[3] + " "; break; } return title;
}
シナリオ B: - fileString[] の長さは 5 - fileTitleString[] の長さは 5
switch 句が行うことはすべて新しいフラグメントをセットアップすることですが、ViewPager はフラグメント間をスワイプできるように前後を知る必要があることを知っています。