Tabs + Swipe アプリケーションに Android 機能を使用しています。それは私のコードのほとんどを生成しました。MainActivity、SectionsPagerAdapter、および Fragment クラスがあります。このアプリケーションでは 2 つのタブを使用するため、各タブに 2 つの異なるフラグメント クラスを作成しました。しかし、最初のタブでは、スピナーを含むフラグメントと、スピナーの下に値を含むテーブルが必要です。私が必要とするのは、スピナーアイテムの選択時に、同じタイプのフラグメントをテーブル内の異なる値のみで再描画したいということです。
また、フラグメントにレイアウト xml ファイルを使用することはできません。これは、テーブルの列または行の数が常に同じであるとは限らないためです。ビューをプログラムで設計する必要があります。ネストされたフラグメントを使用することはできません。これは、アプリケーションを下位バージョンの Android 向けにする必要があるためです。ネストされたフラグメントは、最新の 4.2 バージョン用です。
ここで見つけた同様の質問に基づいていくつかのコードを作成しましたが、まだ問題があります。これは、スピナー選択リスナーに重点を置いた私のフラグメント クラスです。
public class CurrencyListFragment extends Fragment {
...
@Override
public View onCreateView(LayoutInflater inflater, final ViewGroup container,
Bundle savedInstanceState) {
spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
...
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
...
selection = spinner.getSelectedItemPosition();
FragmentTransaction trans = getFragmentManager().beginTransaction();
Fragment fragment = new CurrencyListFragment(selection);
fragment.setArguments(result);
trans.replace(container.getId(), fragment);
trans.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
trans.addToBackStack(null);
trans.commit();
}
}
}
コードの一部をスキップしました。
これが機能しない理由がわかりません...エラーは発生しませんが、最初のタブで同じフラグメントを異なるテーブル値で再描画する代わりに、空白のフラグメントが表示されます....何も表示されません。
これに対する可能な解決策はありますか?