2

こんにちは、Android アプリの作成は初めてです。アクションバーに 3 つのタブを作成したいと考えています。New-> Android Activity-> Navigation with Swipe and Tabs を使用してそれらを作成することで、これを既に行っています。

これが MainActivity の私のコードです (android.com のチュートリアルの 1 つを使用):

 public static class DummySectionFragment extends Fragment {
        /**
         * The fragment argument representing the section number for this
         * fragment.
         */
        public static final String ARG_SECTION_NUMBER = "section_number";

        public DummySectionFragment() {
        }

        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                Bundle savedInstanceState) {
            // Create a new TextView and set its text to the fragment's section
            // number argument value.
            int current_section = getArguments().getInt(ARG_SECTION_NUMBER);

            switch(current_section){
            case 1:
            {

                EditText element1 = new EditText(getActivity());
                element1.setHint(R.string.edit_text_hint);
                element1.setGravity(Gravity.TOP);
                element1.setPadding(40,40,40,0);
                element1.setSingleLine();

                TextView textView = new TextView(getActivity());
                textView.setGravity(Gravity.CENTER);
                textView.setText("Search");


                return element1;
            }
            case 2:
            {
                TextView textView = new TextView(getActivity());
                textView.setGravity(Gravity.CENTER);
                textView.setText("User Account");
                return textView;
            }
            case 3:
            {
                TextView textView = new TextView(getActivity());
                textView.setGravity(Gravity.CENTER);
                textView.setText("Last Updated");
                return textView;
            }
            }
            TextView textView1 = new TextView(getActivity());
            textView1.setGravity(Gravity.CENTER);
//          textView.setText(Integer.toString(getArguments().getInt(
//                  ARG_SECTION_NUMBER)));
            return textView1;
        }
    }

したがって、3 つのタブのそれぞれに異なるアイテム表示がありますが、残念ながら 1 つしか表示できず、それ以上表示することはできません。とても簡単な質問だと思いますが、これがどのように機能するのかわかりません。これで私を助けてくれることを願っています。

4

1 に答える 1

2

チュートリアルでは、textviewを返しています。テキストビューをレイアウトに追加して、レイアウトを返すようにしてください。

あなたが望むのは、異なるタブに異なるフラグメントを使用することだと思います。その後、switch ケースを使用して 1 つの BIG フラグメントを構築する代わりに、フラグメント自体でレイアウトやその他のコードを指定できます。

Fragmentごとに、新しいクラスを作成します。このFragmentはTabBarListenerに追加できます。

FragmentonCreateViewでは、ビューパラメータにオブジェクトを追加することにより、プログラムでレイアウトを作成できます。インフレータを使用して、XML レイアウトをインフレートすることもできます。

サンプル プロジェクトを作成しました。1 つのFragmentビューが膨張し、もう 1 つのフラグメント ビューがプログラムで作成されました。

ここ

Androidのドキュメントを読むと、より明確になります。サンプル コード プロジェクトもあると思います。

Actiobar、タブ セクション

フラグメントに関する詳細情報

于 2013-02-01T10:30:33.503 に答える