1

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();
                    }

                }
    }

コードの一部をスキップしました。

これが機能しない理由がわかりません...エラーは発生しませんが、最初のタブで同じフラグメントを異なるテーブル値で再描画する代わりに、空白のフラグメントが表示されます....何も表示されません。

これに対する可能な解決策はありますか?

4

0 に答える 0