2つのタブを持つPagerFragmentAdapterがありますが、フラグメントは1つだけですPartOne():
@Override
public Fragment getItem(int arg0) {
Bundle data = new Bundle();
switch(arg0){
case 0:
PartOne oneFragment = new PartOne();
data.putInt("current_page", arg0+1);
oneFragment.setArguments(data);
return oneFragment;
case 1:
PartOne twoFragment = new PartOne();
data.putInt("current_page", arg0+1);
twoFragment.setArguments(data);
return twoFragment;
}
return null;
}
PartOne()が読み込まれると、取得します
partChosen = getArguments().getInt("current_page");
私が使用する
if (partChosen == 1) { // Code }
説明したように使用すると、フラグメントの2つのインスタンスは同じように動作し、同じ結果をもたらします(そうでない場合でも、partChosen == 2のように)。ただし、ケース1でフラグメントPartOne()をPartTwo()*に置き換えると、必要に応じて動作します。
* PartTwo()のコードはPartOne()とまったく同じですが、名前が異なります。
どうか、私は何を間違っているのですか?